2024年6月6日 星期四

Xilinx Vivado (2).使用Clock IP並模擬波形

 1. 點選"IP Catalog",增加IP Symbol。


2. 在"Search:"欄位中輸入"clock",尋找"Clocking Wizard"並點選。


3. 點選後可以開啟"Clocking Wizard "設定視窗。


4. 在"Input Frequenc(MHz)"欄位中輸入"50",此參數是因為開發板使用50MHz的震盪器。


5. 點選"Output Clocks"標籤頁,在"Output Clock"勾選需要輸出多少組頻率,我這裡勾選4組,之後在"Requested"欄位中,輸入所需要的頻率值,我這裡由上至下,輸入"200"、"100"、"50"、"25"。


6. 一般會在設計電路時,Reset會習慣使用低電位時動作,所以我這裡在"Reset Type"選擇"Active Low",設定完成按"OK"。


7. 按"OK"。


8. 按"Generate"。


9. 按"OK"。


10. 選擇在Sources視窗的IP Sources標籤頁,點選開啟"Clk_Wiz_0.veo",複製IP 連接的IO port。


  clk_wiz_0 instance_name

   (

    // Clock out ports

    .clk_out1(clk_out1),     // output clk_out1

    .clk_out2(clk_out2),     // output clk_out2

    .clk_out3(clk_out3),     // output clk_out3

    .clk_out4(clk_out4),     // output clk_out4

    // Status and control signals

    .resetn(resetn), // input resetn

    .locked(locked),       // output locked

   // Clock in ports

    .clk_in1(clk_in1));      // input clk_in1


11. 增加設計電路檔案,在"Flow Navigator"視窗,點選"PROJECT MANAGER > Add Sources"。


 12. 勾選"Add or create design sources"之後按"Next>"。



13. 點選"Create File"。


14. 在"File name:"欄位中,輸入source檔案名稱,這裡輸入"Clock",輸入完成按"OK"。


15. 按"Finish",增加source檔案。


16. 按"OK"。


17. 按"Yes"。


18. 在"Sources"視窗中的"Hierarchy"標籤頁中,開啟"Clock.v"檔,貼上IP 連接的IO port,並設定電路IO port的設定。

`timescale 1ns / 1ps

module Clock(
input clk_in1,
input resetn,

output clk_out1,
output clk_out2,
output clk_out3,
output clk_out4
    );
    
clk_wiz_0 clk_wiz_0
(
    // Clock out ports
    .clk_out1(clk_out1),     // output clk_out1
    .clk_out2(clk_out2),     // output clk_out2
    .clk_out3(clk_out3),     // output clk_out3
    .clk_out4(clk_out4),     // output clk_out4
    // Status and control signals
    .resetn(resetn), // input resetn
    .locked(locked),       // output locked
   // Clock in ports
    .clk_in1(clk_in1));      // input clk_in1
endmodule

19. 增加模擬電路檔案,在"Flow Navigator"視窗,點選"PROJECT MANAGER > Add Sources"。
20. 勾選"Add or create simulation sources"之後按"Next>"。


21. 點選"Create File"。


22. 在"File name:"欄位中,輸入source檔案名稱,這裡輸入"testbench",輸入完成按"OK"。

23. 按"Finish",增加simulation source檔案。

24. 按"OK"。

25. 按"Yes"。

26. 在"Sources"視窗中的"Hierarchy"標籤頁中,開啟"testbench.v"檔,設計模擬電路。
`timescale 1ns / 1ps
`define FLASH 1'b1
module testbench();
reg clk_in1;
reg resetn;

wire clk_out1;
wire clk_out2;
wire clk_out3;
wire clk_out4;

Clock uClouk(
.clk_in1    (clk_in1),
.resetn      (resetn),

.clk_out1   (clk_out1),
.clk_out2   (clk_out2),
.clk_out3   (clk_out3),
.clk_out4   (clk_out4)
);

initial
begin
clk_in1 = `FLASH;
forever #5 clk_in1 =~clk_in1;
end

initial
begin
    resetn = 0;
    #100;
resetn = 1;
#8000000 $finish;
end
endmodule

27. 開始模擬,在"Flow Navigator"視窗,點選"SIMULATION > Run Simulation",跳出視窗後點選"Run Behavioral Simulation"。

28. 顯示模擬視窗,如下圖所示,可以看到OUTPUT輸出四種不同頻率。


2024年6月5日 星期三

Xilinx Vivado (1).新增專案

 1. 點選"Vivado"的ICON。

2. 點選"Create Project"。


3. 點選"Next"。

4.  在"Project name:"欄位輸入計畫名稱,"Project location:"選擇計畫存檔路徑,輸入完成後按"Next>"。

5. 選擇"RTL Project"後按"Next>"。


6. 選擇使用的FPGA型號,我這裡先選擇"xc7a35tfgg484-2",選擇完成按"Next>" 。

7.  按"Finish"結束設定。

8. 初始專案如下圖所示。


2024年4月9日 星期二

Cadence AWR 16 - (2)同軸電纜模擬

 

1. 在專案新增電路圖後,至"Elements"標籤頁中,選擇"Transmission Lines" > "Physical" > "COAX",拖拉至電路圖中。

2. 依據下圖所示,增加GND與PORT元件,並且修改同軸電纜參數。


參數中需要修改單位,可以在"Project"標籤頁中點選"Project Options" > "Global Units" > "Edit Units",選擇需要修改的欄位,並修改單位。

3. 點選"Graphs"ˋ按"滑鼠右鍵"選擇"New Graph..."。

4.  選擇"Rectangular"後按"Create"。

5. 點選新增的繪圖檔案,按"滑鼠右鍵",選擇"Add Measurement..."。

6. 在"Measurement"選擇"Z"參數,Data Source Name,選擇繪製的電路圖名稱後按"Add"。

7. 最後按"Analyze",執行模擬,結果如下圖所示。

2024年4月6日 星期六

Cadence AWR 16 - (1)DC analysis

 1. 使用"滑鼠左鍵",點選"AWR Design Environment 16"。


2. 直接點選"OK"。

3. 在"Project"標籤頁,選擇"Circuit Schematics" > "滑鼠右鍵" > "New Schematic...",在建立Project中新增電路圖。

4. 輸入電路圖名稱,這裡輸入"DC_analysis",之後按"Create"。


5. 在"Elements"標籤頁,選擇"Resistor" > "RES"電阻元件。


6.  按"滑鼠左鍵"將 "RES"電阻元件拖拉至電路圖中。


7. 可以使用"滑鼠左鍵"快點兩下參數標籤修改電阻值,我這裡改成1k ohm。

8. 之後再選擇"Sources" > "DC" > "DCVS" 直流電壓源。
9. 按"滑鼠左鍵"將 "DCVS"直流電壓源元件拖拉至電路圖中。

10. 靠近元件節點,按"滑鼠左鍵"可以將元件連線,最後選擇"GND"元件,增加GND符號。

11. 提取電路模擬參數設定,選擇"Draw" > "Add Extraction..."。

12. 選擇"DCIA",直流分析電流值,按"Apply",就會在電路圖下增加分析項目,最後按"OK",結束選擇。

13. 在電路圖下增加分析項目後,點選"Analyze"開始模擬。

14. 點選"Tune Tool",再點選"DCVS"標籤中的V=1V,這時標籤會由黑變藍。
 

15.  點選"Tune"。

16. 跳出Tuner視窗後,滑動Tuner欄位中Slider控制項,可以觀察到當直流電壓出現變化時,電路中的電流值也會隨之改變符合歐姆定理。