91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

為了方便仿真這樣寫個ROM

ruikundianzi ? 來源:IP與SoC設計 ? 作者:IP與SoC設計 ? 2022-12-21 14:26 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

FPGA中有專門的ROM IP Core,如果按照規(guī)范用Verilog編寫的ROM文件可以被工具綜合成RAM資源,而ASIC在需要后端去做專門Memory,前端仿真可以自己編寫RAM/ROM/FIFO/RegFile IP。為了方便仿真這樣寫個ROM,方便初始化。
module single_port_rom(/*autoarg*/
   // Outputs
   q,
   // Inputs
   addr, clk
   );


parameter DATA_WIDTH = 8;
parameter ADDR_WIDTH = 8;


input   [ADDR_WIDTH-1:0] addr;
input   clk;
output reg [DATA_WIDTH-1:0] q;


reg [DATA_WIDTH-1:0] rom[2**ADDR_WIDTH-1:0];


initial begins
    $readmemh("/home/IC/Digital_Front_End_Verilog/ip_lib/rtl/DDS/triangular.txt", rom);
  //$readmemb("sin.txt", rom);
end


always @ (posedge clk)begin
   q <= rom[addr];
end


endmodule
系統(tǒng)函數(shù)$readmemh和$readmemb分別用來讀取十六進制文件和二進制文件。貌似沒有讀十進制的。txt中的數(shù)據(jù)每行一個不需要逗號和最后一個數(shù)據(jù)后面的分號,數(shù)據(jù)格式對應。更多使用可以查詢IEEE的Verilog語法手冊。例化方式和rom IP一樣可參數(shù)化配置任意大小
single_port_rom 
#(
        .DATA_WIDTH(DATA_WIDTH),
        .ADDR_WIDTH(ADDR_WIDTH)
)
u_sin(/*autoinst*/
      // Outputs
      .q                                (dout[DATA_WIDTH-1:0]),
      // Inputs
      .addr                             (addra[ADDR_WIDTH-1:0]),
      .clk                              (clk));
整了三個波形,仿真能跑起來。 36bf3126-80ed-11ed-8abf-dac502259ad0.png36df6e46-80ed-11ed-8abf-dac502259ad0.png37024c18-80ed-11ed-8abf-dac502259ad0.png ? ? ? ? ?將設計電路參數(shù)化可重復使用,構建自己的代碼庫,搭建起你的數(shù)字積木。

審核編輯 :李倩


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • asic
    +關注

    關注

    34

    文章

    1274

    瀏覽量

    124595
  • ROM
    ROM
    +關注

    關注

    4

    文章

    579

    瀏覽量

    89077
  • Verilog
    +關注

    關注

    30

    文章

    1374

    瀏覽量

    114529

原文標題:為了方便仿真這樣寫個ROM

文章出處:【微信號:IP與SoC設計,微信公眾號:IP與SoC設計】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Hummingbirdv2 E203 仿真排坑之路

    仿真時讀入rom,判斷功能是否正確。 3.1編譯工具 編譯需要用riscv的GNU工具,可以在[官網(wǎng)下載](https://nucleisys.com/download.php
    發(fā)表于 10-31 09:22

    Nucleistudio+Vivado協(xié)同仿真教程

    內部ROM啟動,故需要修改 .cfg 配置文件,位置如下? 雙擊打開后,將劃線的flash啟動部分注釋掉 然后修改Build選項,使反匯編生成機器指令文件:右鍵工程,點擊properties 在
    發(fā)表于 10-23 06:22

    RISCV指令二進制編碼利用matlab生成E203仿真可用文件

    鑒于nuclei studio IDE生成的.verilog難懂,為了方便對單條或者幾條指令進行測試,我們隊伍編寫了matlab代碼來實現(xiàn)E203仿真可以識別到的文件。 matlab代碼如下
    發(fā)表于 10-22 07:06

    請問誰家串口屏屏幕支持在線仿真功能,這樣我們做界面更加方便

    發(fā)表于 10-13 09:06

    vivado仿真時GSR信號的影響

    利用vivado進行設計xilinx FPGA時,寫完設計代碼和仿真代碼后,點擊run simulation(啟動modelsim進行仿真)。
    的頭像 發(fā)表于 08-30 14:22 ?1374次閱讀
    vivado<b class='flag-5'>仿真</b>時GSR信號的影響

    胡言亂語:Multisim仿真準不準?偏置電流錯的離譜?

    這是很多同學都會問到的一個問題,Multisim仿真究竟準不準?很多同學在仿真時發(fā)現(xiàn)Multisim仿真結果和手冊的差距太大,然后說是Multisim這個軟件不行,其實不是這樣的,不管
    的頭像 發(fā)表于 07-29 11:28 ?2796次閱讀
    胡言亂語:Multisim<b class='flag-5'>仿真</b>準不準?偏置電流錯的離譜?

    【RK3568+PG2L50H開發(fā)板實驗例程】FPGA部分 | ROM、RAM、FIFO 的使用

    接口列表 該部分介紹每個頂層模塊的接口。 ram_test_top.v ? rom_test_top.v ? fifo_test_top.v ? 3.代碼仿真說明 本次的頂層模塊實際就是例化 IP
    發(fā)表于 07-10 10:37

    Simcenter FLOEFD BCI-ROM和Package Creator模塊

    優(yōu)勢采用獨立于邊界條件的降階模型(BCI-ROM)加速執(zhí)行瞬態(tài)熱仿真,同時采用PackageCreator輕松創(chuàng)建電子封裝熱模型。求解速度比完整的3D詳細模型快40,000倍,且不折損精度有效保持
    的頭像 發(fā)表于 07-08 10:32 ?689次閱讀
    Simcenter FLOEFD BCI-<b class='flag-5'>ROM</b>和Package Creator模塊

    LMK03318如何使用TICS將程序燒錄進ROM?

    請問 LMK03318芯片如何用TICS PRO燒錄進芯片內部ROM?并且上電時鐘就工作,有輸出(就是上電程序自啟動),急?。?!
    發(fā)表于 07-07 14:35

    詳解ADC電路的靜態(tài)仿真和動態(tài)仿真

    ADC電路主要存在靜態(tài)仿真和動態(tài)仿真兩類仿真,針對兩種不同的仿真,我們存在不同的輸入信號和不同的數(shù)據(jù)采樣,因此靜態(tài)仿真和動態(tài)
    的頭像 發(fā)表于 06-05 10:19 ?1992次閱讀
    詳解ADC電路的靜態(tài)<b class='flag-5'>仿真</b>和動態(tài)<b class='flag-5'>仿真</b>

    Simcenter Flotherm BCI-ROM技術:與邊界條件無關的降階模型可加速電子熱設計

    BCI-ROM可生成為矩陣類型、用于電路仿真的電熱模型(VHDL-AMS格式)、用于系統(tǒng)仿真(FMU格式)的模型,甚至用于3DCFD的嵌入式BCI-ROM從根據(jù)熱瞬態(tài)測試數(shù)
    的頭像 發(fā)表于 05-28 10:37 ?1091次閱讀
    Simcenter Flotherm BCI-<b class='flag-5'>ROM</b>技術:與邊界條件無關的降階模型可加速電子熱設計

    求助,關于FX3 ROM引導加載程序系統(tǒng)重啟問題求解

    加載程序。 該問題是否與已知勘誤表問題(FX3 自供電時,USB 啟動模式下 USB 枚舉失?。┯嘘P,因為 USB 端口/電路板在系統(tǒng)重置期間不會完全斷電? 如果是這樣,那么就沒有辦法解決這個問題,讓 ROM 引導加載程序在系統(tǒng)重置后正確顯示,而無需執(zhí)行 FX3 重置,
    發(fā)表于 05-13 06:06

    《聊一聊ZXDoc》之CAN總線仿真、面板仿真

    ZXDoc支持CAN總線仿真、面板仿真功能,通過虛擬化通信環(huán)境,提前驗證、優(yōu)化和保障系統(tǒng)可靠性,降低開發(fā)成本與風險,面板仿真還使其畫面實物化,便于操作和理解,仿真功能已成為ECU研發(fā)和
    的頭像 發(fā)表于 05-09 11:30 ?1489次閱讀
    《聊一聊ZXDoc》之CAN總線<b class='flag-5'>仿真</b>、面板<b class='flag-5'>仿真</b>

    如何使用MCX N ROM API進行內部閃存擦除/編程?

    使用 MCX N ROM API 進行內部閃存擦除/編程
    發(fā)表于 03-27 07:04

    7路達林頓驅動的16KB Flash ROM的AD型MCU AiP8F3201

    7路達林頓驅動的16KB Flash ROM的AD型MCU AiP8F3201
    的頭像 發(fā)表于 03-24 10:09 ?961次閱讀
    7路達林頓驅動的16KB Flash <b class='flag-5'>ROM</b>的AD型MCU AiP8F3201