軟硬體協同設計-HW2 --- 作業:BCD to decimal 學號:A1095150 姓名:陳弘諭 指導老師:林宏益 --- 一.實驗目的: --- 撰寫RTL與testbench並驗證其正確性,並說明所撰寫的 RTL和vivado所合成的schematic是否有差別,最後依據vivado所提供的分析報告去做說明。 --- 二.實驗步驟: --- 1.verilog code ![](https://hackmd.io/_uploads/BypWx2b-6.png) 2.testbench ![](https://hackmd.io/_uploads/SJISl2bZT.png) --- 三.實驗結果: --- 1.波型檔 ![](https://hackmd.io/_uploads/By-hzhZZp.png) 2.schematic ![](https://hackmd.io/_uploads/S1tr7h-b6.png) 3.FPGA實現影片 https://youtu.be/ys9KY8cyvgo?si=Cy46cpidt-P9Jttx --- 四.實驗討論: --- 1. RTL和vivado所合成的schematic是否有差別? RTL和vivado所合成的schematic想法上應該是無差別的,由and和inverter和mux去組合出電路 2.功率分析: ![](https://hackmd.io/_uploads/rkRb5pfZ6.png) 由分析可知,static power偏大,故猜測可能是面積過大或是有輸入浮接造成靜態電流過大 3.時序分析: ![](https://hackmd.io/_uploads/HyaN5az-p.png) 為combination電路,故沒有setup和hold的分析 --- 五.實驗心得: 這次的實驗讓我搞清楚之前一直用錯的語法,雖然花了許多時間在debug,好在有找到錯誤的地方。而老師這次要我們去看能量的分析,我發現我靜態電流特別的大,代表我打的RTL不是很好,如果之後有多餘的時間可以用其他想法來撰寫RTL並比較其能量花費的優劣。 今天去實驗室將其燒入至FPGA上,過程並不是太熟悉相信多做幾次後很快就可以上手了。