--- tags : 數位系統實驗報告 --- ###### 20221028 江宥旻 張晉漢 黃智鍇 梁銘牲 鄭名傑 20221028 數位系統實驗 === :::info **實驗目的** 1. 以麵包版實現真值表中的實體電路 2. 輸出需接$LED$串聯限流電阻$1k\Omega$ 3. 輸入需用指撥開關控制 4. 以$Verilog$實現模擬電路,並且含驗證波形 | A | B | C | Output | |:---:|:---:|:---:|:------:| | 0 | 0 | 0 | 0 | | 0 | 0 | 1 | 1 | | 0 | 1 | 0 | 1 | | 0 | 1 | 1 | 1 | | 1 | 0 | 0 | 1 | | 1 | 0 | 1 | 1 | | 1 | 1 | 0 | 1 | | 1 | 1 | 1 | 0 | ::: --- Boolean Function --- $$POS: F = (A + B + C)\cdot(\overline{A} + \overline{B}+ \overline{C})$$ > 因為0的項很少,所以我們選擇用POS來化簡。 Circuit --- ![](https://i.imgur.com/XFkcH1p.png =400x) | A | B | C | F | Circuit | | A | B | C | F | Circuit | |:---:|:---:|:---:|:---:|:------------------------------------------:| --- |:---:|:---:|:---:|:---:|:------------------------------------------:| | 0 | 0 | 0 | 0 | ![](https://i.imgur.com/YFE9oLJ.jpg =100x) | | 1 | 0 | 0 | 1 | ![](https://i.imgur.com/VWBBpm9.jpg =100x) | | 0 | 0 | 1 | 1 | ![](https://i.imgur.com/seEuaGB.jpg =100x) | | 1 | 0 | 1 | 1 | ![](https://i.imgur.com/i4ibBZY.jpg =100x) | | 0 | 1 | 0 | 1 | ![](https://i.imgur.com/MHr24Nz.jpg =100x) | | 1 | 1 | 0 | 1 | ![](https://i.imgur.com/f94pFj2.jpg =100x) | | 0 | 1 | 1 | 1 | ![](https://i.imgur.com/qZqbJZc.jpg =100x) | | 1 | 1 | 1 | 0 | ![](https://i.imgur.com/SUUQowS.jpg =100x) | 1. 利用兩輸入的OR-gate組出三輸入的OR-gate + ![](https://i.imgur.com/8bzTapW.png =100x) 2. 利用指撥開關的123分別代表ABC + 上撥$\Rightarrow$為ON(輸入為High) + 下撥$\Rightarrow$為OFF(輸入為Low) 3. 利用LED來觀察輸出的狀態 + LED亮$\Rightarrow$輸出為High + LED暗$\Rightarrow$輸出為Low Verilog --- ```verilog= // test.v module test(f, a, b, c); input a, b, c; output f; wire w1, w2, abar, bbar, cbar; or g1(w1, a, b, c); not g2(abar, a); not g3(bbar, b); not g4(cbar, c); or g5(w2, abar, bbar, cbar); and g6(f, w1, w2); endmodule ``` ```verilog= // testbench.v module tb_test; reg a = 1'b0; reg b = 1'b0; reg c = 1'b0; wire f; test m1(f, a, b, c); initial begin $dumpfile("tb_test.vcd"); $dumpvars; #100 a = 1'b0; b = 1'b0; c = 1'b1; #100 a = 1'b0; b = 1'b1; c = 1'b0; #100 a = 1'b0; b = 1'b1; c = 1'b1; #100 a = 1'b1; b = 1'b0; c = 1'b0; #100 a = 1'b1; b = 1'b0; c = 1'b1; #100 a = 1'b1; b = 1'b1; c = 1'b0; #100 a = 1'b1; b = 1'b1; c = 1'b1; #100 $finish; end endmodule ``` Wave --- ![](https://i.imgur.com/15XErVD.png) ![](https://i.imgur.com/BoalNV9.png) ![](https://i.imgur.com/VldfDXa.png) ![](https://i.imgur.com/Dtn6Gk7.png) ![](https://i.imgur.com/0q2B5Bm.png) ![](https://i.imgur.com/4YZqliQ.png) ![](https://i.imgur.com/NWiNDzK.png) ![](https://i.imgur.com/hHvEQUi.png) --- :::success **:bulb:實驗結果討論** $Q$:電路的應用? $A$:判斷輸入是否相同。 $Q$:若指撥開關不接線流電阻會發生什麼事? $A$:電流不受限,流經IC之電流過大,IC可能會燒毀。 ::: :::info **:computer:實驗心得** | 姓名 | 心得 | |:------:|:--:| | 江宥旻 | 雖然課程內容在高職時就已經學過了,不過再碰一次還是覺得很有趣! | | 張晉漢 | 今天習題用到的技巧是POS,再一次認識到理論的重要。如果未經過化簡的話,3個IC是不可能接出題目要求的電路的。 | | 黃智鍇 | 腦袋轉得有點慢,還是要多練習啊! | | 梁銘牲 | 今天的實驗有點複雜,但結果令人著迷! | | 鄭名傑 | 有越來越上手的感覺了! | :::