色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 牛人業(yè)話 > 小梅哥和你一起深入學(xué)習(xí)FPGA之點亮LED燈(下)

          小梅哥和你一起深入學(xué)習(xí)FPGA之點亮LED燈(下)

          作者: 時間:2015-03-11 來源:網(wǎng)絡(luò) 收藏

            七、 測試平臺設(shè)計

          本文引用地址:http://cafeforensic.com/article/270854.htm

            本實驗主要對的輸出和輸入與復(fù)位的關(guān)系進(jìn)行測試仿真,通過仿真,即可驗證設(shè)計的正確性和合理性。相關(guān)testbench的代碼如下:

            以下是代碼片段:

            `timescale 1ns/1ns

            module _Driver_tb;

            reg Rst_n;

            reg [3:0] Sig;

            wire [3:0] Led;

            _Driver

            #( /*參數(shù)例化*/

            .Width (4)

            )

            LED_Driver_inst(/*端口例化*/

            .Rst_n(Rst_n),

            .Sig(Sig),/*OFF ON ON OFF*/

            .Led(Led)

            );

            initial begin

            Rst_n = 0;

            Sig = 4'b1010;

            #100;

            Rst_n = 1;

            #40 Sig = 4'b0001;

            #40 Sig = 4'b0010;

            #40 Sig = 4'b0011;

            #40 Sig = 4'b0100;

            #40 Sig = 4'b0101;

            #40 Sig = 4'b0110;

            #40 Sig = 4'b0111;

            #40 Sig = 4'b1000;

            #40 Sig = 4'b1001;

            #40 Sig = 4'b1010;

            #40 Sig = 4'b1011;

            #40 Sig = 4'b1100;

            #40 Sig = 4'b1101;

            #40 Sig = 4'b1110;

            #40 Sig = 4'b1111;

            #40;

            $stop;

            end

            endmodule

            由testbench中可以看出,初始值給Sig賦了一個初始值,系統(tǒng)處于復(fù)位狀態(tài),100ns后,復(fù)位過程結(jié)束,系統(tǒng)進(jìn)入正常工作狀態(tài),Sig信號每隔一定時間變化一次。因此,只需要觀察Led信號與Sig信號的關(guān)系,即可驗證設(shè)計的正確與否。

            八、 仿真分析

            

           

            由上圖仿真結(jié)果可知,當(dāng)復(fù)位信號為低電平時,Led輸出全部為1,則所有LED熄滅,當(dāng)復(fù)位信號為高電平時,則Led輸出與Sig信號一致,證明設(shè)計正確無誤。對于頂層模塊,仿真沒有什么太大的實際意義,因此不做仿真。

            九、 下板驗證

            手頭暫無開發(fā)板,板級驗證略。

            十、 總結(jié)

            可能很多初學(xué),又看過其它一些資料的同學(xué)會對小梅哥的這種組織方式感覺不太習(xí)慣,認(rèn)為本來一個代碼模塊就能搞定的事兒被我硬生生拆成了兩個,增加了系統(tǒng)的復(fù)雜性。其實,我這里主要是強調(diào)了一種建模的思想,我們所做的模塊一定要具有靈活性和通用性,當(dāng)其它設(shè)計中需要用到該外設(shè)時,只需要關(guān)心其內(nèi)部端口就行了,在頂層例化時只需要將對應(yīng)信號接到該端口上就能實現(xiàn)功能了,不用再專門為了特定應(yīng)用再寫一次。目前系統(tǒng)簡單,可能大家還看不出這種方式的優(yōu)勢,隨著以后的設(shè)計越來越復(fù)雜,大家就能很明顯的看到這種設(shè)計方式的優(yōu)勢所在了。

          fpga相關(guān)文章:fpga是什么


          led燈相關(guān)文章:led燈原理




          關(guān)鍵詞: FPGA LED

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉