30.ROM-IP核的调用

(1)ROM IP核简介:

        ROM是只读存储器,是一种只能读出事先锁存的固态半导体存储器。其特性是一旦存储资料就无法再将之改变或删除,并且资料也不会因为电源关闭而消失。(掉电不丢失)

        FPGA使用内部RAM实现ROM、RAM ip核的功能,Xilinx使用coe文件填充ROM和RAM。

(2)ROM的配置:

ROM关键词:block

PLL关键词:clk

  • 配置单端口rom流程:

初始文件coe文件格式如下:

  • 配置双端口rom流程:

(3)ROM的调用:单端口ROM为例

module rom(clk,add,dout);

    input clk;
    input [7:0]add;
    
    output [7:0]dout;

rom_8x256 rom_8x256_inst(
    .clka(clk),    // input wire clka
    .addra(add),  // input wire [7 : 0] addra
    .douta(dout)  // output wire [7 : 0] douta
);

endmodule

(4)仿真文件代码:

`timescale 1ns / 1ps

module rom_tb;

    reg          clk ;
    reg       reset_n;
    reg     [7:0]add ;
    
    wire    [7:0]dout;

    rom rom_inst(
        .clk    (clk ),
        .add    (add ),
        .dout   (dout)
    );
    
    initial clk = 1'b1;
    always #10 clk = ~clk;
    
    initial begin
        reset_n <= 1'd0;
        #15;
        reset_n <= 1'd1;
        #50000;
        $stop;
    end
    
    always@(posedge clk or negedge reset_n)
        if(!reset_n)
            add <= 8'd0;
        else if(add == 8'd255)
            add <= 8'd0;
        else 
            add <= add + 8'd1;

endmodule

(5)仿真波形:

相关推荐

  1. <span style='color:red;'>RAM</span> <span style='color:red;'>IP</span><span style='color:red;'>核</span>

    RAM IP

    2024-07-12 08:20:04      42 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-12 08:20:04       66 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-12 08:20:04       70 阅读
  3. 在Django里面运行非项目文件

    2024-07-12 08:20:04       57 阅读
  4. Python语言-面向对象

    2024-07-12 08:20:04       68 阅读

热门阅读

  1. jQuery 选择器

    2024-07-12 08:20:04       27 阅读
  2. Android上如何使用perfetto分析systrace

    2024-07-12 08:20:04       27 阅读
  3. Git温习

    2024-07-12 08:20:04       29 阅读
  4. 深入了解WebKit:简介及工作流程详解

    2024-07-12 08:20:04       28 阅读
  5. 学习看论文入门记录

    2024-07-12 08:20:04       120 阅读
  6. DP学习——建造者模式

    2024-07-12 08:20:04       25 阅读
  7. 基于深度学习的视频修复

    2024-07-12 08:20:04       25 阅读
  8. element如何实现自定义表头?

    2024-07-12 08:20:04       22 阅读
  9. 测试驱动开发的艺术:Xcode中实现TDD的全面指南

    2024-07-12 08:20:04       23 阅读
  10. 构建Memcached帝国:分布式部署策略与实践指南

    2024-07-12 08:20:04       27 阅读
  11. 数据库中的数据视图(View):深入理解与应用

    2024-07-12 08:20:04       30 阅读