文章目录

  • 三、 ram based shift register
    • 3.1 概述
    • 3.2 端口说明
    • 3.3 ip核的生成
    • 3.4 代码的生成
    • 3.5 仿真结果

三、 ram based shift register

3.1 概述

   顾名思义,对输入的数据进行延时

3.2 端口说明


3.3 ip核的生成

(1)configuration 选项的配置(本次width选1,depth选8

(2)初始化相关的参数

(3)输出选项卡的配置

3.4 代码的生成

例子1:固定长度

`timescale 1ns / 1ps
//
// Company:
// Engineer:
//
// Create Date: 2022/04/30 16:40:00
// Design Name:
// Module Name: shift_tb
// Project Name:
// Target Devices:
// Tool Versions:
// Description:
//
// Dependencies:
//
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
//
//module shift_tb();reg D;
reg CLK;
wire Q;c_shift_ram_0 your_instance_name (.D(D),      // input wire [0 : 0] D.CLK(CLK),  // input wire CLK.Q(Q)      // output wire [0 : 0] Q
);initial CLK =1;
always #5 CLK=~CLK;initial beginD=0;#10;D=1;#10;D=0;
endendmodule

例子2:可变长度

module shift_lengthvariable_tb( );
reg D;
reg CLK;
reg [7:0] A;
wire Q;c_shift_ram_1 your_instance_name (.A(A),.D(D),      // input wire [0 : 0] D.CLK(CLK),  // input wire CLK.Q(Q)      // output wire [0 : 0] Q
);initial CLK =1;
always #5 CLK=~CLK;initial beginD=0;A=8'd10;#10;D=1;#10;D=0;#30;
end
endmodule

例子2:多bit数

module shift_lengthvariable_tb( );
reg [7:0] D;
reg CLK;
reg [7:0] A;
wire[7:0] Q;c_shift_ram_1 your_instance_name (.A(A),.D(D),      // input wire [0 : 0] D.CLK(CLK),  // input wire CLK.Q(Q)      // output wire [0 : 0] Q
);initial CLK =1;
always #5 CLK=~CLK;initial beginD=0;A=8'd15;#10;D=8'b10101100;#10;D=0;#30;
end
endmodule

3.5 仿真结果

例子1

总结:ip核的深度设置为8,实际输出比输入延时了7个时钟周期
例子2:

总结:A=10,实际输出比输入延时了11个时钟周期,这是因为在ip核设置中如上图绿色框所示多了1个额外的时钟周期
例子3:

总结:A=15,实际为16个时钟周期,解释同例子2

【FPGA】:ip核----ram based shift register相关推荐

  1. FPGA IP核之RAM

    1.RAM简介 RAM 是随机存取存储器(Random Access Memory)的简称,是一个易失性存储器.RAM 工作时可以随时从任何一个指定的地址写入或读出数据,同时我们还能修改其存储的数据, ...

  2. 基于FPGA的IP核RAM的设计和调用

    介绍IP核: IP(知识产权)核将一些在数字电路中常用但比较复杂的功能块,如FIR滤波器,SDRAM控制器,PCI接口等做成一个"黑盒"或者可修改参数的模块,供设计者使用.IP核包 ...

  3. FPGA IP核之ROM

    1.ROM介绍 ROM 是只读存储器(Read-Only Memory)的简称,是一种只能读出事先所存数据的固态半导体存储器.FPGA中通过IP核生成的ROM或RAM都是调用FPGA中的RAM生成的, ...

  4. FPGA IP核 串口实验 signaltap

    文章目录 前言 一.IP核 1. 新建工程 2. IP核建立和调用 3. 工程文件的配置 二.串口IP核 1 2. 总结 前言 之前有写过verilog对FPGA串口和sdram的操作,但是我整合代码 ...

  5. 基于 NVMe 的 exFAT 文件系统 FPGA IP 核简介

    应用场景 用于需要对大数据量进行实时高速存储且需要文件管理的场景,如: ·超高速高清相机数据记录 ·航空成像与测量数据记录 ·雷达数据模拟与仿真 ·宽带卫星中频记录系统 ·汽车安全碰撞测试 ·高速AD ...

  6. [从零开始学习FPGA编程-51]:高阶篇 - 基于IP核的FPGA开发- 什么是FPGA IP核(软核、固核、硬核)与学习方法

    作者主页(文火冰糖的硅基工坊):文火冰糖(王文兵)的博客_文火冰糖的硅基工坊_CSDN博客 本文网址: 目录 前言: 第1章 IP是什么? 1.1 什么是知识产权

  7. FPGA中ROM IP与RAM IP核配置与调用

    目录 一.ROM IP核 1.简介 2.创建立初始化文件 3.配置 4.调用 4.1 整体设计 4.2 编写rtl代码: 4.3 仿真验证 二.RAM IP核 1.简介 2.配置 3.调用 3.1 整 ...

  8. IP 核之RAM实验

    目录: 1.IP核 RAM简介 2.实验1: 配置单端口 RAM 1)实验任务 2)创建工程并添加ram ip 3)编写ram_rw.v 4)编写顶层文件 5)编写激励文件 6)仿真测试 7)ILA测 ...

  9. vivado IP核:ILA、时钟、RAM、FIFO

    ILA vivado工具集成了逻辑分析仪,ILA IP核用于替换外部的逻辑分析仪,添加探针来监控内部信号波形变化. 1)IP Catalog 2)搜索栏可搜索IP核,如创建FIFO.RAM等. 3)搜 ...

  10. LabVIEW FPGA PCIe开发讲解-7.2节:目前主流的4大Xilinx FPGA PCIe DMA通信IP核讲解

    1.要开发一个带PCIe或者PXIe接口的FPGA板卡出来,除了硬件本身外,最重要的就是FPGA芯片里面的PCIe通信代码编写,俗称下位机FPGA编程:还有中间层的驱动文件编写以及上位机PC端的应用程 ...

最新文章

  1. php 函数分类,PHP Array 函数
  2. java环境用openoffice转pdf
  3. 监督分类空白处也被分类了_监督学习(2)|本质是分类的“逻辑回归”
  4. 【j360-boot】Spring-boot系列三(崩溃模式,不是你崩就是电脑崩)
  5. 深度学习《stackGAN》
  6. django项目部署服务器后无法发送邮箱 错误信息:Connection unexpectedly closed
  7. 学科领域本体关系数据与可视化
  8. linux 程序或服务开机自启动
  9. Excel技巧—超实用的字符串拆分小技巧
  10. cefsharp远程调试工具
  11. 5W1H 图书管理系统
  12. 0.88mm液晶拼接屏在会议显示中的优势分析
  13. 人工智能助力网络金融反欺诈,声纹识别受追捧
  14. A Novel Plug-in Module for Fine-Grained Visual Classification学习
  15. arm push/pop/b/bl汇编指令
  16. 打造个人云数据生活解决方案示例
  17. AI Studio 飞桨 零基础入门深度学习笔记6.3-手写数字识别之数据处理
  18. Wireshark使用详解
  19. 适用于ios5的应用_适用于设计人员和开发人员的10个很棒的iOS应用
  20. python安装及模块安装

热门文章

  1. Hulu俱乐部分享之兴趣篇
  2. java excel转pdf linux_docker安装libreoffice并实现把Excel转为pdf
  3. eclipse运行代码后变为红色和绿色
  4. win10产品密钥查看
  5. 网络型多媒体计算机教室功能是,多媒体网络教室中的信息技术教学
  6. 怎么批量删除旧的微博内容?推荐按键精灵自动删除
  7. 可以批量把Word文件转成JPG的软件工具
  8. linux可以用tab键,linux下tab键在命令行情况下的强大
  9. html超链接调用js函数,在html中引入外部js文件,并调用带参函数的方法
  10. 推荐10款最好的免费项目管理工具