2020年5月4日 星期一

Reset the win 7 to get the IP if hotspot is not available

How to Solve the Windows Could Not Automatically Detect Network Proxy Settings Error

 Ben Stegner  
Sometimes you’ll see that frustrating yellow exclamation point icon over your network connection icon in Windows. The OS offers to troubleshoot it for you, but after running through the automatic tool, you see this message:
Advertisement
Windows could not automatically detect this network’s proxy settings.
What does this mean, and how do you fix it? Let’s take a look at Windows’ proxy settings and the steps to repair this.

1. Reboot Your Computer and Router

Before you launch into advanced troubleshooting, it’s always a good idea to restart your equipment first. There’s a chance that this will clear up your issue in a few moments.
Because this error is usually related to misconfigured settings on one computer, restarting your router likely won’t have an effect. But it’s still worth a try whenever you run into network problems of any kind.
If you reboot your computer and router and the problem hasn’t fixed itself, continue on with the more detailed steps.

2. Review Proxy Settings in Windows

Windows 10 Proxy Settings
Because this issue is related to your Windows proxy settings, that’s a sensible first place to check. To access proxy settings in Windows 10, open Settings, select the Network & Internet category, and switch to the Proxy tab from the left sidebar.
Here you’ll see a list of options related to proxy servers. If you don’t use a proxy (as is the case for most home users), make sure the Use a proxy server slider is turned off. Leave Automatically detect settings on if it is already.
For users who do connect with a proxy, such as in a work or education environment, you might want to check with your system administrator to make sure you have the correct proxy details.
After this, try reconnecting to the network again. If you still get the error, try turning off Automatically detect settings in the proxy options and try once more.

What’s a Proxy Server?

We don’t want to bore you with the details while you try to fix this issue but wanted to provide a brief explanation of what a proxy actually is and why Windows can run into problems with it.
Essentially, a proxy server acts as a middleman between your computer and the internet. Instead of you connecting directly to the internet, you connect to the server, which grabs information from the internet for you.
These are most common in business and school use, where system administrators use them for security and efficiency. It’s very unlikely that you would use a proxy server on your home network unless you specifically set one up. This is why you should clear any proxy settings that might exist when you run into this issue.
See our full explanation of proxy servers for more information.
 What Is a Proxy Server?Heard the term "proxy server" but have no idea what it means? Here's how a proxy can help beat region blocking and more.Read More

3. Run the Network Adapter Troubleshooter

When you right-click on the network connection icon and choose to troubleshoot, it runs the Internet Connections troubleshooter, resulting in the “Windows could not detect proxy settings” error. But there’s another network troubleshooter you can run that might provide more help.
Open Settings again and visit Update & Security > Troubleshoot. Find Network Adapter in the list and walk through the troubleshooter for this. As seasoned Windows users know, this tool doesn’t always fix your problem, but it’s worth a try.

4. Auto-Obtain IP Address and DNS

Windows IP Settings
As it turns out, there aren’t many troubleshooting steps specific to proxy servers. We’ll share more tips below, but bear in mind that the troubleshooting looks similar to fixing the “No Internet Access” Windows error from this point on.
 Connected to Wi-Fi, But No Internet Access in Windows? Here's the Fix!Seeing the annoying "connected but no internet" error on your Windows PC? Follow these steps when you have no internet access.Read More
While they’re not technically related to your proxy settings, misconfigured IP address or DNS settings can cause this error too. To check them, browse to Settings > Network & Internet > Status. Click the Change adapter options button in the list to see all your network connections, then double-click on the one you’re using.
Here, click the Properties button and double-click Internet Protocol Version 4 in the list. Make sure you have both Obtain an IP address automatically and Obtain DNS server address automatically selected. Misconfigured settings here will prevent you from getting online.

5. Update or Roll Back Your Network Driver

Windows 10 Device Manager Update Roll Back
An outdated network driver may lead to connection problems. Similarly, perhaps you’ve recently installed a botched update for your network driver. In either case, replacing it might clear up the trouble.
Right-click on the Start Button and choose Device Manager to open this utility. Expand the Network adapters section and double-click on the connection you use.
On the Driver tab, you can choose Roll Back Driver to uninstall the latest update and return to the previous one. Use this if you started experiencing this issue after updating.
Choose Update Driver and you can check for new updates over the internet. This likely won’t find anything though, so you’ll need to manually download the latest driver from your machine’s manufacturer. See our guide to updating Windows drivers for help.
 How to Find & Replace Outdated Windows DriversYour drivers might be outdated and need updating, but how are you to know? Here's what you need to know and how to go about it.Read More

6. Reset Network Configuration Via the Command Prompt

Windows offers many network troubleshooting tools through the Command Prompt. A few quick commands can clear up your issue in moments. If you’re still having trouble at this point, right-click the Start Button again and open a Command Prompt (or PowerShell) as Administrator.
Then run the following commands, one at a time. They will reset various network functions of your computer:
netsh winsock reset
netsh int ip reset
ipconfig /release
ipconfig /renew
ipconfig /flushdns

7. Review Firewall, VPN, and Antivirus Software

Windows Defender Firewall
You should next make sure you don’t have a firewall, VPN, or security suite interfering with your network connection. Perhaps your chosen software had an update that changed some settings you weren’t aware of, or you just installed a new app.
Try disabling your firewall, VPN, and antivirus software one at a time, then see if the error goes away. If it does, the issue lies with one of those apps. You’ll need to configure them to avoid interfering with regular network activity.

8. Scan for Malware

Some malware has been known to continually mess with your proxy settings to prevent you from getting online. If you run into the “Windows could not detect this network’s proxy settings” message every time you reboot, you may be a victim of this.
You should thus run a scan with a trusted anti-malware app, such as Malwarebytes. This will detect any viruses or other malware running on your system and get rid of them. If the scan finds any infections, take the recommended action and see if your connection works as normal again.

9. Utilize a Restore Point

Windows 10 Restore Point
The System Restore feature in Windows lets you return to a previous point when your computer was working normally. If your issues started recently, you should try this to see if you can go back in time.
Search for Control Panel in the Start Menu to open it. If Category is selected in the top-right, switch to Small or Large icons and choose the System entry.
Next, click System protection on the left sidebar. In the resulting dialog box, click System Restore to open a new window. Windows will walk you through choosing a restore point and confirming the operation. Of course, if your computer hasn’t created any restore points, you can’t use this feature.
Note that using a restore point will remove any programs and drivers you installed since making that restore point. You can click Scan for affected programs on a restore point to see what effect it will have. A System Restore won’t affect any of your personal information.

10. Reset Your Network Settings

Windows 10 Network Reset
After trying everything above, you should resort to a full reset of your network options. You’ve already spent a lot of time working on this, and a reset should clear whatever persistent problem is blocking your connection.
Thankfully, Windows 10 makes it easy to reset your whole configuration. Open Settings > Network & Internet. On the Status tab, find Network reset at the bottom and click this.
Be aware that this will remove all network information from your computer, so you’ll need to reconnect to saved networks again. If you’re OK with this, click Reset now. Your computer will perform the reset, then restart.

More on Network Troubleshooting

Now you know what to do when Windows cannot detect proxy settings. All network errors are frustrating, but you should be able to clear this one up without much work. It’s most important to make sure that you have a proxy turned off (if you don’t use one) or configured properly (if you do use one).
Otherwise, some standard network troubleshooting should have you all patched up. We have an extensive guide to Windows network troubleshooting if you need more help.

2020年3月29日 星期日

Win10 Setting for L2TP VPN

As title. Below is the solution:

Win10 無法連線至 Synology VPN Server

Jul 20, 2017 · 3 min read
之前公務電腦剛換成 Windows 10 後,就有發現內建的 VPN 連線沒辦法連回家裡的 Synology VPN Server,不過因為想繞過的東西通常是網站,而 SSH tunnel 還是可以穩定運作,所以也就置之不理,但最近為了 prepare 以後可能會用到的狀況,還是研究了一下怎麼解決。

症狀

我在 Synology DS213+ with DSM 6.1 上安裝了官方的 VPN Server package,前面接了一台 Wifi 分享器,有開 UDP 500, 1701, 4500 的 port-forwarding。(參考:Synology 服務使用哪些網路連接埠?)
在手機上或是 Mac 筆電都可以正常連線 VPN,所以排除是 VPN server, 或是 firewall, port forwarding 之類的問題,Windows 10 的 VPN 設定也是正確的,使用 L2TP/IPSec,填了正確的金鑰,但會出現下列錯誤:

新增 Registry 機碼解決

查了一下,似乎是個從 Vista 時代就一直有的錯誤(也太古老了吧?!),Microsoft 官方的說明在:How to configure an L2TP/IPsec server behind a NAT-T device in Windows Vista and in Windows Server 2008
解決方法是在 Registry 裡增加一個新的機碼:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PolicyAgent 新增一個 32-bit DWORD,名稱為 AssumeUDPEncapsulationContextOnSendRule 然後把值設為 2
理論上要重開機才會生效,不過我試了兩台 Windows 10,一台沒重開也 OK 就是了。Anyway, 如果發現沒有效果就重開試試吧!

其他安全性設定

基本上這樣 VPN 就可以連線了,不過還是有一些安全性的設定可以調整。在連線的設定裡,「安全性」標籤,資料加密欄位改為「需要加密(如果伺服器拒絕就中斷連線)」(預設是「可省略加密」),另外允許這些通訊協定的選項,只勾選「MS-CHAP v2」,如下圖:
如此一來,連上 VPN 就可以繞過一些惱人的問題啦!

From: 
https://medium.com/@tsaiid/win10-%E7%84%A1%E6%B3%95%E9%80%A3%E7%B7%9A%E8%87%B3-synology-vpn-server-a4fea4558221
 

2017年3月2日 星期四

How to Create Symbol from Schematic & Perform Simulation in Cadence

I am not an experienced researcher, as well as not good at setting up the environment in either Cadence or Linux. I am slowly learning all these things, so to start with today I will talk about simpler stuff. I mainly rely on HSPICE to perform simulations and Cadence for layout. After one year of not doing any simulations I have already forgotten how to create symbol from schematic and perform AC/TR simulation in Cadence 5, too bad. Let's get started.

Assume that you have already completed the schematic so you wish to create a symbol of it to perform simulations. This is a very convenient way as you only have to deal with 1 block instead of 30 or more transistors. Follow the steps below to create a symbol from a schematic:

1. Go to “Design” -> “Create Cellview” -> “From Cellview”
2. Make sure the chosen schematic is correct (Cell Name), and choose “Composer-Symbol” in “Tool / Data Type”. Click “OK” if everything is correct
3. Input the desired “Left Pins”, “Right Pins” etc. This does not affect the operation of the block but only the pin assignment of the output block (symbol)
4. You should be able to see that a symbol is created from the schematic of your designed circuit after Step 3

Now you have created a symbol of your designed circuit. You are strongly recommended to perform simulations of your circuit in Cadence before proceeding to the layout part to make sure you did not mess up the schematic. Check to see if the simulation results match your HSPICE simulations. Now:

1. Click “File” -> “New” -> “Cell View” to create a new cell view under your library
2. You can create separate cell view for AC simulation and TR simulation as you do not need to remove certain instances and reconnect everything every time. Make sure you select “Composer-Schematic” in “Tool”
3. Add the symbol of your designed circuit into this schematic, and add other instances needed e.g. ideal capacitor (cap), inductor (idn), DC current source (idc), DC voltage source (vdc) etc. If you need to perform AC simulation, use the instance vdc as the input and set the “AC Magnitude” to 1. If you need a pulse input then use vpwl or vpulse and set the respective values of pairs of points.
4. Now you can start to perform simulation. In this case we are using AC simulation as an example. Go to “Tool” -> “Analog Environment”
5. A new window should pop up. Check to see if your design is selected. Then click “Choose Analyses”
6. Select “ac” in “Analysis”, “Frequency” in “Sweep Variable”, input your desired “Sweep Range”, choose “Logarithmic” in “Sweep Type” and input the “Points Per Decade” you wish to have. Finally remember to click “Enabled” if you wish to perform this simulation (no point to do so many things if you do not want to perform simulation, right?). Then click “OK”
7. The selected analysis should now appear under “Analyses”. If everything is OK then click “Netlist and Run” on the right
8. A new output log will pop up after Step 7. This log file is very important as it contains information of the simulation. If there is any warnings or errors the output log will display related information. Remember to check this log in case you run into any problems
9. Assume that you don’t encounter any fatal errors in your simulation, you can now view the Bode plot. Go to “Results” -> “Direct Plot” -> “AC Gain & Phase” (or any other type you prefer)
10. Then Cadence will ask you to “Select first point” and “Select second point”. C on the output net and the input net to view the Bode plot
11. You can now see the Bode plot. Click “Switch Axis Mode” if you wish to separate the gain plot and phase plot like Fig. 16. You can also click “Crosshair Marker A” or “Crosshair Marker B” to view the output values at different frequencies.

Hope this guide helps (help myself actually). Have a nice day!

2016年11月20日 星期日

Install Android on Raspberry pi 3 from linux platform

Download and follow the instruction from there:

https://git.embedded.rwth-aachen.de/rtandroid/downloads/raspberry-pi/


Below is some minor changes:
 
Flashing RTAndroid

This section describes how to flash RTAndroid. Please use a Linux destribution for the installation process. Windows users should use a Live-CD or VirtualBox.
Once you have downloaded the package, it can be flashed as follows.
  1. Make sure you have a micro SD card with UHS speed class of 4 or higher. Slow memory cards will slow down the system significantly.
  2. Unpack the downloaded zip package.
  3. unzip rtandroid-[VERSION]-[DATE]-rpi3.zip -d .
  4. Edit the file "boot/config.txt" for desired resolution. You can find more information here or here.
  5. Insert the memory card into your computer. All data on this card will be lost.
  6. Execute the install script from the downloaded package:
    • Find the device name where the card is mounted (example: /dev/sdc)
    • sudo fdisk -l
    • Use the "-p" flag to partition your card.
    • Use the "-f" flag to format your card.
    • bush ./install.sh -p -f /dev/sdc <- read out "/dev/sdc" from command sudo fdisk -l
    • Wait for the script to terminate. If everything went fine, put the memory card into the raspberry pi and power it on.
  7. Execute the gapps script from the downloaded package, if desired.
Depending on the memory card the first system boot can take up to 15 minutes until RTAndroid will be fully functional. Feel free to use the comment section below or the RPi discussion group for feedback and further questions.

Removing partitions (or format) of a USB

So… a while back I was playing around with Linux and needed a bootable install disc. I decided to make one of my spare USB thumb drives into one. All went well, and I successfully installed Ubuntu Server on my machine. Great.
Fast forward to this morning when I needed said thumb drive to transfer some pretty hefty files. Low and behold, my 4GB thumb drive was being read as a 2MB thumb drive. No problem… just format the thing, right? Uh… no. Apparently not.
To create the install disk, I used a nice little program called Image Writer for Windows It worked great, but unfortunately it partitioned my thumb drive, and Windows 7, for some reason, couldn’t get rid of the partitions when I tried to format it. Bleh. Thankfully, Google is always there when I need it.
It turns out there’s utility in Windows 7 (and probably other Windows versions as well, but I’m using 7) called Diskpart that will fix this problem right up for you. Here’s how to use it to format a USB drive.
  1. Bring up the command prompt. Easiest way is to go to the Start menu and type in “cmd” in the search box and hit enter.
  2. In the command prompt window, type “diskpart”. That will launch another window with a DISKPART> prompt.
  3. Type “list disk” to find out which disk your USB drive is. It should be pretty obvious from the size of the disk. If it’s not, alternatively, you can search “Computer Management” under the Start menu, and then click on “Disk Management”. You should see something that says “Disk 1 Removeable” or something similar.
  4. Once you know which disk you want, in the Diskpart window, type “select disk 1” (or whatever number your thumb drive happens to be assigned to). Diskpart should tell you that this is now the selected disk,
  5. Type “clean”. This will get rid of all the old information on the disk, as well as any partitions. Diskpart will tell you when this has succeeded.
  6. Type “create partition primary”. This sets up the new partition (one big one instead of a small one) for the drive.
  7. Type “select partition 1” to select the partition you just created.
  8. Type “active” to mark the selected partition as active.
  9. Type “format fs=ntfs quick” to format the drive. This may take a few minutes depending on the size of the drive.
  10. Type “assign”.
  11. Type “exit” to leave the Diskpart program.
http://nlb-creations.com/2013/01/17/removing-partitions-from-a-usb-thumb-drive/

2015年12月6日 星期日

[Latex] Linux Latex Lab Book Package


Diary is a useful practice for our daily research work.
We may need to trace back what have we done and what is planned ahead day by day.

It is quite tedious to have a single tex file / word stuff to manage all the stuff. So why not a full package which can do all the stuff automated?

Under Linux environment, you can:

  1. Automated the daily entry process ( Create / Edit today's entry )
    > script/dailyEntry.sh
  2. Build the diary automatically everyday (3 am)
    > cd script; ./autoBuild.sh

This work is based on previous work of Mikhail Klassen and licensed under Creative Commons Share Alike 3.0

Download Lab Book (labbook.tar.gz)
It has been a while for last update

2015年11月2日 星期一

2015年9月13日 星期日

ROM Address naming

For 32K x 8 ROM, it needs 15 address pin
For 4K x 8 ROM, it needs 12 address pin

32KB ROM=/= 32K ROM
Since 4K x 8 = 32K ROM 

32k x 8 = 32kB ROM is byte accessible only.
read a byte from all 8 ROMs (32k)

2014年8月26日 星期二

[VCS] UPF Generation and Verification from SystemVerilog RTL

Situation:
In a particular research process, we encountered a situation that hundreds of power domain and switches. It is almost impossible to handle it manually. An automation design flow is needed to handle them. Therefore we developed an automatic process to generate UPF from SystemVerilog RTL using VCS.

Design Flow Output:
A fully functional UPF Description. It works as a single level single source power architecture with multiple power controller supported.

REMARK:
The current script only support Synopsys EDA Tools. For Cadence user...... I can't help you.
The script is not published at current state and will be used on a undergoing research.
CUHK ASIC Lab Members who wish to adopt the Auto UPF flow, please contact me through my mail or find me directly.

>Office: SHB 217
>Mail: khwong _ ee _ cuhk

Process
1. Define power controller in RTL
A power controller will assert a string at the beginning of  simulation.
This define the name of the controller, the power domains under its control, enabled low-power features (isolation,retention, level shifting), name of the control signals and related setting.
The behavior of the controller is described as standard RTL.
The assertion is in CSV format. 
We can define multiple power controllers by giving unique name to the power controllers.

Example Assertion:
         // synopsys translate_off
        initial begin 

              $display("PWR,CTRL,%s,%m,%1d,%1d,%1d,%s,%s,%s",PDControllerName......);
        end

         // synopsys translate_on


Example Output:
PWR,CTRL,Buf_1_1_0,tb.inBuf.pwrCtrl,0,1,0,powerUp,high,powerUp,low,1,powerUp,powerUp,none,none
PWR,CTRL,Buf_1_2_1,tb.inBuf.pwrCtrl,0,1,0,powerUp,high,powerUp,low,1,powerUp,powerUp,none,none

2. Define assertion for units under control
Each unit under controller by a power controller will be given a power domain.
Those instance will assert a CSV line that includes the name of the power controller and which bit of the control signal will be used. (Control signals from the controller is a bit vector)
Example Assertion:
         // synopsys translate_off
        initial begin

              $display("PWR,PD,%s,%m,1d",PDControllerName,PDControlIndex);
        end
        // synopsys translate_on


Example Output:
PWR,PD,Buf_1_1_0,tb.inBuf.bufferArray[0].bufferUnit,0
PWR,PD,Buf_1_1_0,tb.inBuf.bufferArray[1].bufferUnit,1
PWR,PD,Buf_1_1_0,tb.inBuf.bufferArray[2].bufferUnit,2
PWR,PD,Buf_1_1_0,tb.inBuf.bufferArray[3].bufferUnit,3
PWR,PD,Buf_1_1_0,tb.inBuf.bufferArray[4].bufferUnit,4
PWR,PD,Buf_1_1_0,tb.inBuf.bufferArray[5].bufferUnit,5


3. Simulate the design
We have the simulate the design to obtain all the assertions from the RTL. This can be done easily by:
> vcs -full64 -sverilog src/*.sv | grep ^PWR > PWR.txt
We can obtain all Power related assertion by "grep"

Example Output:
PWR,PD,CPU_1_1_0,tb.inCPU.processorArray[0].processorUnit,0
PWR,PD,CPU_1_1_0,tb.inCPU.processorArray[1].processorUnit,1
PWR,PD,CPU_1_1_0,tb.inCPU.processorArray[2].processorUnit,2
PWR,PD,CPU_1_1_0,tb.inCPU.processorArray[3].processorUnit,3
PWR,PD,CPU_1_1_0,tb.inCPU.processorArray[4].processorUnit,4
PWR,PD,CPU_1_1_0,tb.inCPU.processorArray[5].processorUnit,5
PWR,PD,CPU_1_1_0,tb.inCPU.processorArray[6].processorUnit,6
PWR,PD,CPU_1_1_0,tb.inCPU.processorArray[7].processorUnit,7
PWR,PD,CPU_1_1_0,tb.inCPU.processorArray[8].processorUnit,8
PWR,PD,CPU_1_1_0,tb.inCPU.processorArray[9].processorUnit,9
PWR,PD,CPU_1_1_0,tb.inCPU.processorArray[10].processorUnit,10
PWR,PD,CPU_1_1_0,tb.inCPU.processorArray[11].processorUnit,11
PWR,PD,CPU_1_1_0,tb.inCPU.processorArray[12].processorUnit,12
PWR,PD,CPU_1_1_0,tb.inCPU.processorArray[13].processorUnit,13
PWR,PD,CPU_1_1_0,tb.inCPU.processorArray[14].processorUnit,14
PWR,PD,CPU_1_1_0,tb.inCPU.processorArray[15].processorUnit,15
PWR,CTRL,CPU_1_1_0,tb.inCPU.pwrCtrl,0,1,0,powerUp,high,powerUp,low,1,powerUp,powerUp,none,none

In this example, we have 1 power controller and 16 instances under its control.

4. Translate the result into UPF
Afterwards, assertion records can be translated with "csvtool" and our script.

5. Compile Power State Table (PST)
The script will generate a PST template includes all possible power state combinations.
However, the default table might be much larger than enough and exhaust the system.
In this example, we have 65536 possible combinations but we only need 242 of them.
We have to modify those PST and compile them into UPF separately.

6. (Verification) Locate the top design instance uses the UPF.
This can be done by adding [set_design_top "testBench/topInstance"] at the beginning of the UPF.

7. Adding Power Instruction to your test bench.
Adding the following to your test bench:

module tb();
import UPF::*;
initial begin
         supply_on("VDD",1.05);
        supply_on("VSS",0.0);

//Other power control commands if needed
        #300 supply_off("VDD");

end
...

8. Run VCS with UPF
After merging all UPF as one, we can recompile the SystemVerilog RTL with UPF Specification.

> vcs -full64 -sverilog -upf top.upf src/*.sv

The result of our run is as follow:

2014年7月9日 星期三

[Xilinx] Booting Petalinux on Zynq through JTAG+TFTP, w/o an SD Card


Hi all,
I am quite new to Zynq System and spend a few days to port a working Linux on the chip. Xilinx provides both XSDK for baremetal developments and petalinux for linux deployment. Personally I hate keep plugging the SD for every single time especially when I deal with linux development.
However, The "petalinux-boot" utility always fail to boot a working linux or we can't even transfer the image to the DRAM. I would like to make all the stuff done with JTAG,LAN and standard tools like XMD. I would like to share the solution I have realized after a few days of struggling. Hope this helps your development.

We assume:
1. You have finished the "petalinux-create" for a petalinux file system.
2. You have configured the system through "petalinux-config"
3. You have finished the compilation of your system through "petalinux-build".
If you failed to build the rootfs, please try to run the build for TWICE MORE. It works.
4. You have exported your hardware and they can be accessed by XSDK.

You will have the following files in "<PetaLinux Dir>/images/linux"
1. image.ub > Kernel Image for u-boot
2. urootfs.cpio.gz > RootFS for linux in u-boot format
3. system.dtb > Device Tree Blob
They should be also located in "/tftpboot". They should be identical.

You will need two more files for the setup.
1. The bit stream of your PL/FPGA Design
You can find them through [find . -name "*.bit"]
2. The TCL Script to initialize the PS/ARM.
It is located at the "someDesign.sdk/hardware platform" under your Vivado project folder.
You can find them through [find . -name "*ps7_init.tcl"].
Copy these files to the "<PetaLinux Dir>/images/linux" is recommended.

After that, you can use XMD to boot the system. You also need an UART connection to your FPGA.

Steps:
1. > xmd
2. xmd> source ps7_init.tcl
3. xmd> connect arm hw
5. xmd> ps7_init
6. xmd> ps7_post_conf
7. xmd> dow u-boot.elf
8. xmd> run
9. xmd> fpga -f bitstream.bit

Step 5 and 6 enable the DDR-RAM PLL for DDR-RAM access. And these routine is located in the "ps7_init.tcl" mentioned.
Step 7 and 8 launch u-boot through JTAG.
Connecting the UART through a terminal application (e.g. Putty) and stop the auto boot process.
Step 9 downloads the bitstream to the FPGA. Without this, the kernel might stuck because it can't find the custom device through AXI ports and fail the process.

9. uboot> tftpboot 0x1000000 /tftpboot/image.ub
10. uboot> tftpboot 0x2000000 /tftpboot/urootfs.cpio.gz
11. uboot> tftpboot 0x3000000 /tftpboot/system.dtb
12. uboot> bootm 0x1000000 0x2000000 0x3000000

Step 9-11 load all the kernel related files to the DDR-RAM through tftp and bootm will start the boot.
The addresses (0x1,2,3000000) can be adjusted according to the file size.
The linux should be ready for access.

As a final remark, you might have to modify:
1. "bootargs" to boot the kernel. Most likely the ip should be included. For static IP setting, you will need: ip=DeviceIP:ServerIP:NetMask:GatewayIP:HostName:InterfaceName
It can be used during the boot process but you still need to modify "/etc/network/interfaces"
2. "tftpboot" needs a device IP and also the server IP. Make sure you have set the correct IP setting in uboot env. Furthermore, TFTP runs in UDP and no gateway is needed. You might check if the tftp server listens the correct port through: ">netstat -nulp"

Now, you can deploy your system without using SD Card. This allows me to perform remote development even I am working somewhere else. Hope you enjoy the development.