在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 使用LX9開(kāi)發(fā)板對(duì)兼容ARM9處理器的開(kāi)源軟核進(jìn)行Dhrystone Benchmark測(cè)試(下)

            使用LX9開(kāi)發(fā)板對(duì)兼容ARM9處理器的開(kāi)源軟核進(jìn)行Dhrystone Benchmark測(cè)試(下)

            作者:free-arm(網(wǎng)名) 時(shí)間:2013-02-27 來(lái)源:電子產(chǎn)品世界 收藏

              我們把EN_KEY引入設(shè)計(jì)中,讓它連接入處理器內(nèi)核的cpu_en輸入端口中。接下來(lái),用一個(gè)計(jì)數(shù)器作為IRQ輸入中斷的觸發(fā)源。我們知道進(jìn)行Dhrystone benchmark測(cè)試時(shí),必須有一個(gè)實(shí)時(shí)時(shí)鐘來(lái)讓程序知道完成dhrystone運(yùn)算花了多長(zhǎng)時(shí)間。在Realview MDK提供的dhrystone例程中,里面有句注釋是這樣的:/* Timer Counter 0 Interrupt executes each 10ms @ 40 MHz Crystal Clock */,也就是每10 ms即要發(fā)送一次irq中斷脈沖。

            本文引用地址:http://www.biyoush.com/article/142464.htm

              然后,把兼容ARM9處理器內(nèi)核例化到程序中。
              reg [14:0] wr_addr;
              always @ (posedge clk or posedge rst )
              if ( rst )
              wr_addr <= 14'b0;
              else if (cpu_en)
              wr_addr <= 14'b0;
              else if (rx_vld)
              wr_addr <= wr_addr + 1'b1;
              else;
              rom u_rom (
              .clka ( clk ),
              .ena ( cpu_en ? rom_en : rx_vld ),
              .wea ( cpu_en ? 4'b0 : (1'b1<
              .addra ( cpu_en ? rom_addr[14:2] : wr_addr[14:2] ),
              .dina ( {4{rx_data[7:0]}} ),
              .douta ( rom_data ),
              .clkb ( clk ),
              .enb ( ram_cen & ~ram_wen & (ram_addr[31:28]==4'h0 ) ),
              .web ( 4'b0 ),
              .addrb ( ram_addr[14:2] ),
              .dinb ( 32'h0 ),
              .doutb ( ram_rdata_rom )

              后續(xù)的程序是對(duì)模塊的描述。模塊存放著程序,它除了供應(yīng)給處理器內(nèi)核的指令池外,還包括數(shù)據(jù)池對(duì)模塊的訪問(wèn)。另外,在編程態(tài),從串口送入的字節(jié),會(huì)依次寫入ROM模塊中,地址是不斷遞增的。采用wr_addr作為編程ROM的地址,不斷遞加。

              接下來(lái)是模塊的例化。模塊是在地址ram_addr[31:28]等于4時(shí),可以訪問(wèn)。模塊可以進(jìn)行讀寫,讀寫操作由ram_wen控制。Wea可以控制RAM模塊的字節(jié)使能。

              ram u_ram (
              .clka ( clk ),
              .ena ( ram_cen&(ram_addr[31:28]==4'h4) ),
              .wea ( ram_wen ? ram_flag : 4'b0 ), // Bus [3 : 0]
              .addra ( ram_addr[13:2] ), // Bus [11 : 0]
              .dina ( ram_wdata ), // Bus [31 : 0]
              .douta ( ram_rdata_ram )
              ); // Bus [31 : 0]

              然后是例化了一個(gè)串口模塊。這個(gè)模塊是筆者寫一個(gè)串并轉(zhuǎn)換發(fā)送字節(jié)的模塊。只需要把tx_vld/tx_data[7:0]寫入相應(yīng)的字節(jié),那么它就會(huì)把tx_data[7:0]串行通過(guò)UART_TX發(fā)送出去。同理,如果收到字節(jié),則會(huì)啟動(dòng)rx_vld/rx_data[7:0],表示收到一個(gè)字節(jié)。rx_vld和tx_vld都是高電平使能信號(hào)。在rx_vld等于1時(shí),表示收到的有效字節(jié)位于rx_data中。

              rxtx u_uart (
              .clk ( clk ),
              .rst ( rst ),
              .rx ( UART_RX ),
              .tx_vld ( tx_vld ),
              .tx_data ( tx_data ),
              .rx_vld ( rx_vld ),
              .rx_data ( rx_data ),
              .tx ( UART_TX ),
              .txrdy ( txrdy )

              然后是讀選擇信號(hào)。由于會(huì)對(duì)ROM、RAM、串口這三個(gè)不同模塊進(jìn)行讀寫,rd_sel可以區(qū)分此次讀操作該選擇哪一個(gè)數(shù)據(jù)。這當(dāng)然是通過(guò)ram_addr來(lái)區(qū)分的。



            關(guān)鍵詞: ROM RAM

            評(píng)論


            相關(guān)推薦

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

            關(guān)閉