杭電計算機組成實驗2(二)超前進製加法器設計實驗

2021-10-12 16:41:45 字數 1858 閱讀 8796

實驗內容

掌握運用verilog hdl進行資料流描述與建模的技巧和方法,掌握模組呼叫與例項引用的方法

掌握超前進製加法器的原理與設計方法

解決方法

分析4位的二進位制全加器的輸入輸出,內部為超前進製邏輯

首先,要知道超前進製邏輯與行波進製加法器的區別

行波進製加法器需要像鍊子一樣,等第一位算完,再算第二位,而超前進製加法器是四位同時,第二位包括了第一位的計算部分,從而達到消除依賴的關係

**展示:

頂層模組

module second_experiment_first(a,b,f,c4,c0);

input [3:0]a,b;

input c0;

output [3:0]f;

output c4;

assign g0 = a[0] & b[0];

assign p0 = a[0] | b[0];

assign g1 = a[1] & b[1];

assign p1 = a[1] | b[1];

assign g2 = a[2] & b[2];

assign p2 = a[2] | b[2];

assign g3 = a[3] & b[3];

assign p3 = a[3] | b[3];

assign c1 = g0 | p0&c0;

assign c2 = g1 | p1&g0 | p0&p1&c0;

assign c3 = g2 | p2&g1 | p2&p1&g0 | p2&p1&p0&c0;

assign c4 = g3 | p3&g2 | p3&p2&g1 | p3&p2&p1&g0 | p3&p2&p1&p0&c0;

assign f[0] = a[0]b[0]c0;

assign f[1] = a[1]b[1]c1;

assign f[2] = a[2]b[2]c2;

assign f[3] = a[3]b[3]c3;

endmodule12

3456

78910

1112

1314

1516

1718

1920

2122

測試模組

module second_experiment_test;

// inputs

reg [3:0] a;

reg [3:0] b;

reg c0;

// outputs

wire [3:0] f;

wire c4;

second_experiment_first uut (

.a(a),

.b(b),

.f(f),

.c4(c4),

.c0(c0)

);initial begin

a = 4』b1000;

b = 4』b1000;

c0 = 1;

#100;

a = 4』b1001;

b = 4』b1001;

c0 = 1;

#100;

a = 4』b1011;

b = 4』b1011;

c0 = 1;

endendmodule12

3456

78910

1112

1314

1516

1718

1920

2122

2324

2526

2728

29特別注意

題主在網上看到乙份報告中的**並不是把所有的運算拿過來的,而是把c1賦給c2這樣做的,assign這種組合邏輯電路,是並行執行,這樣的方法不一定可行

杭電計算機組成實驗2(二)超前進製加法器設計實驗

1.掌握運用verilog hdl進行資料流描述與建模的技巧和方法,掌握模組呼叫與例項引用的方法 2.掌握超前進製加法器的原理與設計方法 1.分析4位的二進位制全加器的輸入輸出,內部為超前進製邏輯 2.首先,要知道超前進製邏輯與行波進製加法器的區別 3.行波進製加法器需要像鍊子一樣,等第一位算完,再...

計算機組成實驗筆記

實驗 xdc檔案 預設情況下,vivado ide中顯示的xdc檔案 或tcl指令碼 的順序定義了將elaborated design或synthesized design載入到記憶體時工具使用的讀取順序。首先讀取列表頂部的檔案,最後讀取底部的檔案。只需在ide中選擇檔案並將其移動到列表中的所需位置...

計算機組成原理(1)實驗2

一 運算器實驗 1.實驗內容及要求 1 學習資料處理部件的工作方式控制。2 學習機器語言程式的執行過程。3 通過人工解碼,加深對解碼器基本工作原理的理解。4 理解 微 命令的順序執行過程。2.實驗環境 dice cp266計算機組成原理與系統結構實驗儀 3.實施步驟或引數 1 計算07h 6ah後左...