国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

xilinx仿真實驗:IP核之RAM的配置

454398 ? 來源:CSDN博主 ? 作者:ciscomonkey ? 2020-11-21 09:57 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

背景

RAMROM也是類似的,由于這也是常用的IP核,所有完全有必要在這里記錄一下,以后用到了實際后,再補充到實際工程中。隨機存儲器(RAM),它可以隨時從任一指定地址讀出數據,也可以隨時把數據寫入任何指定的存儲單元,且讀寫的速度與存儲單元在存儲芯片的位置無關。RAM主要用來存放程序及程序執行過程中產生的中間數據、運算結果等。RAM按照存儲單元的工作原理可以分為靜態RAM和動態RAM,也就是常說的SRAM和DRAM

SRAM速度非常快,是目前讀寫最快的存儲設備,比如CPU的一級緩沖,二級緩沖。而計算機內存就是DRAM,比SRAM便宜。這里要說明的是,DRAM與SRAM相比較速度慢,但是它與ROM相比較速度還是很快的。

RAM IP核同ROM IP核一樣,xilinx也提供了兩種:一種是單端口的RAM IP,另一種是雙端口的RAM IP。

IP核之RAM的配置







在這個頁面中,有3個可供修改的標簽“option output resisters”(可選輸出寄存器)的“portA”(端口A)、“memory Initialization”(存儲器初始化)和“File Remaining Memory Locations”(填補剩余的內存位置)。

在“port A”(端口A)欄有兩個可修改項:
“register port A output of memory primitives”:表示源于的輸出端口A處增加寄存器級。
“Register port A output of memory core”:表示在IP核的輸出端口A處增加寄存器級。
在“memory Initialization”(存儲器初始化)欄中,我們可以載入coe文件對ROM IP核進行初始化。在“Fiie Remaining Memory Locations”(填補剩余的內存位置)欄中,我們可以將剩余內存填充上我們指定的數值。


在這個頁面中,有2個可供修改的標簽,“power estimate options”(功耗估計選項)的“output reset options”(輸出復位選項)的“port A”(端口A)可以選擇是否添加一個“RSTA”引腳。“output reset valure(Hex)”設置復位輸出值(十六進制)。


創建好了RAM 后,進行例化。

代碼:

`timescale 1ns / 1ps
//////////////////////////////////////////////////////////////////////////////////
// Company: 
// Engineer: 
// 
// Create Date:    09:44:24 05/23/2019 
// Design Name: 
// Module Name:    RAM_top 
// Project Name: 
// Target Devices: 
// Tool versions: 
// Description: 
//
// Dependencies: 
//
// Revision: 
// Revision 0.01 - File Created
// Additional Comments: 
//
//下述功能描述了寫入一個地址為0~511的地址,從512~1023 不寫入數據
//////////////////////////////////////////////////////////////////////////////////
module RAM_top(
input clk,
input rst,
output reg ram_en,   //RAM IP核的使能信號
output reg wren,		//RAM IP核的寫使能信號
                		//RAM IP核的地址信號
output reg [7 : 0] wrdata,		//RAM IP核的寫數據信號
output  [7 : 0] rddata		//RAM IP核的讀數據信號
		//用來產生地址和數據的計數器
);
reg [8 : 0] addr=0;
reg [7 : 0] time_cnt=0;

always @ (posedge clk or negedge rst)
begin
	if(!rst)
	  time_cnt<=0;
	else if(time_cnt=='d1023)
	  time_cnt<=1'd0;
	else 
	  time_cnt<=time_cnt+1;
end


//用來產生RAM IP核的寫使能信號
always @ (posedge clk or negedge rst)
begin
	if(!rst)
	wren<=0;
	else if (time_cnt

下面來說一下該代碼主要實現了什么功能,該代碼主要實現了先往RAM IP核中的0 ~ 511地址寫入0 ~511 數據,每個地址對應一個數據,比如0地址對應0數據,1地址對應1數據,以此類推。寫完了512個數據之后,讀數據時,我們需要將寫使能拉低,而ram_en信號在操作RAM的過程中需要一直拉高。(雖然在這里,我們沒有設置ranm_en)。再寫完512個數據后,然后進行讀數據,此時,輸入一個地址,讀取一個對應地址的數據,此時將wren保持為低,這樣就沒法寫入數據,只能讀取數據了。給一個地址,讀取一個對應地址的數據。

仿真

采用modelsim SE 10.4 進行仿真,一看上去波形正確。

我們放大來看看,也可以看到,在地址為0,讀取數據為0,然后地址為1,讀取數據為1.以此類推。

note:仿真失敗的,要注意添加ISE的庫到modelsim中,或者編譯庫文件,再調用modelsim。

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

    關注

    41

    文章

    2394

    瀏覽量

    189145
  • sram
    +關注

    關注

    6

    文章

    820

    瀏覽量

    117467
  • RAM
    RAM
    +關注

    關注

    8

    文章

    1399

    瀏覽量

    120564
  • Xilinx
    +關注

    關注

    73

    文章

    2200

    瀏覽量

    131137
  • 波形
    +關注

    關注

    3

    文章

    407

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Vivado中IP被鎖定的解決辦法

    當使用不同版本的Vivado打開工程時,IP被鎖定的情況較為常見。不同版本的Vivado對IP的支持程度和處理方式有所不同。
    的頭像 發表于 02-25 14:00 ?184次閱讀
    Vivado中<b class='flag-5'>IP</b><b class='flag-5'>核</b>被鎖定的解決辦法

    基于AXI DMA IP的DDR數據存儲與PS端讀取

    添加Zynq Processing System IP配置DDR控制器和時鐘。7000系列的Zynq可以參考正點原子DMA回環測試設置。
    的頭像 發表于 11-24 09:25 ?3241次閱讀
    基于AXI DMA <b class='flag-5'>IP</b><b class='flag-5'>核</b>的DDR數據存儲與PS端讀取

    使用AXI4接口IP進行DDR讀寫測試

    本章的實驗任務是在 PL 端自定義一個 AXI4 接口的 IP ,通過 AXI_HP 接口對 PS 端 DDR3 進行讀寫測試,讀寫的內存大小是 4K 字節。
    的頭像 發表于 11-24 09:19 ?3732次閱讀
    使用AXI4接口<b class='flag-5'>IP</b><b class='flag-5'>核</b>進行DDR讀寫測試

    VDMA IP簡介

    VDMA端口信號 S_AXI_LITE:PS端可以通過AXI_LITE協議對IP進行控制; S_AXIS_S2MM:視頻流(AXI STREAM)輸入到IP的FIFO中
    發表于 10-28 06:14

    芯來e203移植開發分享(二)——仿真文件簡述與itcm固化程序

    主要有兩個方法: 1、將itcm中的ram替換為vivado的bram ip,通過ip配置時,加載.verilog文件。 2、在/rtl
    發表于 10-27 06:04

    Vivado浮點數IP的握手信號

    是1bit1bit進來的,則需要tlast,發完最后一個bit時拉高,tuser可以用來配置表示一些用戶需要的信息)。 需要注意的是,本以為只有當數據數據的valid拉高后,IP才能接受數據,但
    發表于 10-24 07:01

    Xilinx BRAM IP配置及其例化

    首先在IP catalog中搜索 BRAM ,點擊BRAM GENERATOR。 接口方式有五種,一般使用simple dual port ram Simple Dual Port RAM,簡單雙
    發表于 10-24 06:10

    ram ip的使用

    決定的。 ram 主要用來存放程序及程序執行過程中產生的中間數據、 運算結果等。 rom為只讀存儲器,只能讀取數據而不能向里面寫入數據。 本次講解的ram ip
    發表于 10-23 07:33

    如何在Vivado上仿真蜂鳥SOC,仿真NucleiStudio編譯好的程序

    ramIP就可以 2. 將機器指令初始化到ITCM的bank-ram-IP 生成的機器指令在這里 然后我們需要把它轉化為coe文件 我們參考網上的相關代碼,做了hex到coe的轉換,核心代碼實現如下: 讀取hex:
    發表于 10-21 11:08

    【RK3568+PG2L50H開發板實驗例程】FPGA部分 | Pango 的時鐘資源——鎖相環

    代碼無法實現的,所以 PLL IP 才會成為程序設計中最常用 IP 之一。 PLL IP 是紫光同創基于 PLL 及時鐘網絡資源設計的
    發表于 07-10 10:28

    物聯網仿真實訓教學平臺:以網關為,重塑教育新范式

    物聯網仿真實訓教學平臺應運而生,通過虛擬仿真技術構建真實場景,結合網關的核心功能,為教育行業開辟了一條高效、安全、靈活的實踐之路。
    的頭像 發表于 07-04 09:21 ?680次閱讀

    VIVADO自帶Turbo譯碼器IP怎么用?

    turbo譯碼器IP,控制接口配置了flush、standard、size,輸入接口送的是編碼后量化的數據,因為編碼輸出的是1bit(0或1),量化為5位有符號數,小數部分配0,對應fix8_3
    發表于 06-23 17:39

    JESD204B IP配置與使用

    物理層的位置,一種是物理層在JESD204 IP里;另外一種是物理層在JESD204 IP外部,需要再配置JESD204 phy IP進行
    的頭像 發表于 05-24 15:05 ?2345次閱讀
    JESD204B <b class='flag-5'>IP</b><b class='flag-5'>核</b>的<b class='flag-5'>配置</b>與使用

    Xilinx Shift RAM IP概述和主要功能

    Xilinx Shift RAM IP 是 AMD Xilinx 提供的一個 LogiCORE IP
    的頭像 發表于 05-14 09:36 ?1076次閱讀

    做ros0小車仿真實驗室stp 文件免費獲取方法

    做ros小車仿真實驗室時,用Solidworks到處urdf文件,但沒有四驅輪式機器人三維模型(stp 文件),要去哪里找免費的。(小車型號為ABOT-M1)
    發表于 04-09 21:57