verilog 給數組集體賦值_Verilog中如何對數組賦值(存儲器memory詳解)

http://blog.sina.com.cn/s/blog_9424755f0101rhrh.html

存儲器是一個寄存器數組。存儲器使用如下方式說明:

reg [ msb: 1sb] memory1 [ upper1: lower1],

memory2 [upper2: lower2],. . . ;

例如:

reg [0:3 ] MyMem [0:63]

//MyMem為64個4位寄存器的數組。

reg Bog [1:5]

//Bog為5個1位寄存器的數組。

MyMem和Bog都是存儲器。數組的維數不能大于2。注意存儲器屬于寄存器數組類型。線網數據類型沒有相應的存儲器類型。

單個寄存器說明既能夠用于說明寄存器類型,也可以用于說明存儲器類型。

parameter ADDR_SIZE = 16 , WORD_SIZE = 8;

reg [1: WORD_SIZE] RamPar [ ADDR_SIZE-1 : 0], DataReg;

RamPar是存儲器,是16個8位寄存器數組,而DataReg是8位寄存器。

在賦值語句中需要注意如下區別:存儲器賦值不能在一條賦值語句中完成,但是寄存器可以。因此在存儲器被賦值時,需要定義一個索引。下例說明它們之間的不同。

reg [1:5] Dig; //Dig為5位寄存器。

. . .

Dig = 5'b11011;

上述賦值都是正確的, 但下述賦值不正確:

reg BOg[1:5]; //Bog為5個1位寄存器的存儲器。

. . .

Bog = 5'b11011;

有一種存儲器賦值的方法是分別對存儲器中的每個字賦值。例如:

reg [0:3] Xrom [1:4]

. . .

Xrom[1] = 4'hA;

Xrom[2] = 4'h8;

Xrom[3] = 4'hF;

Xrom[4] = 4'h2;

為存儲器賦值的另一種方法是使用系統任務:

1) $readmemb (加載二進制值)

2) $readmemb (加載十六進制值)

這些系統任務從指定的文本文件中讀取數據并加載到存儲器。文本文件必須包含相應的二進制或者十六進制數。例如:

reg [1:4] RomB [7:1] ;

$ readmemb ("ram.patt", RomB);

Romb是存儲器。文件“ram.patt”必須包含二進制值。文件也可以包含空白空間和注釋。下面是文件中可能內容的實例。

1101

1110

1000

0111

0000

1001

0011

系統任務$readmemb促使從索引7即Romb最左邊的字索引,開始讀取值。如果只加載存儲器的一部分,值域可以在$readmemb方法中顯式定義。例如:

$readmemb ("ram.patt", RomB, 5, 3);

在這種情況下只有Romb[5],Romb[4]和Romb[3]這些字從文件頭開始被讀取。被讀取的值為1101、1100和1000。

文件可以包含顯式的地址形式。

@hex_address value

如下實例:

@5 11001

@2 11010

在這種情況下,值被讀入存儲器指定的地址。

當只定義開始值時,連續讀取直至到達存儲器右端索引邊界。例如:

$readmemb ("rom.patt", RomB, 6);

//從地址6開始,并且持續到1。

$readmemb ( "rom.patt", RomB, 6, 4);

//從地址6讀到地址4。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/529582.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/529582.shtml
英文地址,請注明出處:http://en.pswp.cn/news/529582.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

ajax排行頁面,ajax簡單頁面

簡單的注冊頁面運用ajax主頁面無標題文檔//首先引用jquery文件登錄頁面用戶名:密碼:$("#btn").click(function(){//1.取內容var uid $("#uid").val();var pwd $("#pwd").val();//2.拿內容去數據庫驗證$.ajax({url:"…

云函數查詢_速覽 | 京東云5月重要產品與功能更新

新增產品高可用組 正式發布產品概述:高可用組是京東云提供的云主機邏輯集合,高可用組內的云主機分散部署在相互隔離的物理資源上,當出現硬件故障或定時維護時只會影響部分云主機,客戶業務仍為可用狀態,本服務免費。流水…

服務器文件夾同步到手機,本機文件夾同步到云服務器

本機文件夾同步到云服務器 內容精選換一換華為云幫助中心,為用戶提供產品簡介、價格說明、購買指南、用戶指南、API參考、最佳實踐、常見問題、視頻幫助等技術文檔,幫助您快速上手使用華為云服務。本節操作介紹本地MacOS系統主機通過安裝“Microsoft Rem…

centos7恢復mysql數據庫_mysql數據庫恢復過程記錄

月初某晚朋友說數據庫誤刪了,沒有備份能不能恢復,我一愣,突然想到之前我們遇到過的問題,便問他是否開啟了binlog。show variables like log_bin; //查看命令如果現實log_bin是ON,就說明打開了。值得慶幸,他…

絕地求生6月28日服務器維護,絕地求生6月28日更新到幾點 吃雞6月28日更新內容一覽...

絕地求生6月28日更新到幾點? 絕地求生6月28日更新內容一覽。下面跟著小編一起來看看吧!絕地求生6.28維護時間上午10點開始(預計3個小時)下午1點開服絕地求生6月28日維護內容介紹通行證: 薩諾調整了通行證系統的機制- 每日最多獲取XP 限制 80 改為120- 完成任務最少游戲時間&am…

in ms sql 集合參數傳遞_神奇的 SQL → 為什么 GROUP BY 之后不能直接引用原表中的列?...

GROUP BY 后 SELECT 列的限制標準 SQL 規定,在對表進行聚合查詢的時候,只能在 SELECT 子句中寫下面 3 種內容:通過 GROUP BY 子句指定的聚合鍵、聚合函數(SUM 、AVG 等)、常量。我們來看個例子:我們有 學生班級表(tbl_student_cla…

服務器日志文件中包含堆棧跟蹤,日志框架 Logback 官方手冊(第三章:Configuration)...

以下內容翻譯整理自logback官方手冊,地址:logback官方手冊logback 配置將日志請求插入應用程序代碼需要相當多的計劃和工作。觀察表明,大約有4%的代碼用于日志記錄。因此,即使是一個中等大小的應用程序,其代碼中也會包…

extjs 月份選擇控件_Excel | 做個生日提醒控件,本月或下月過生日的員工信息隨你查看...

問題情境掌握職工的生日信息,及時送出生日祝福,是每位HR必備的技能。某公司要求將公司的員工生日信息實現查詢,可方便的查看本月及下月過生日的員工信息,效果如下動圖:效果中可以看出:勾選”本月生日“&…

音頻服務器未顯示,Win7系統沒有聲音提示“一個或多個音頻服務未運行”如何解決...

在win7系統中沒有聲音,點擊右下角小喇叭,按照提示進行修復完成后的“疑難解答已完成”界面,提示已找到問題“一個或多個音頻服務未運行”如何解決呢?出現這樣的情況,我們只需將音頻所需服務啟動即可。下面跟隨小編腳步…

php 兩個數組 交集_兩個數組的交集

給定兩個數組,編寫一個函數來計算它們的交集。示例1:輸入:nums1 [1,2,2,1], nums2 [2,2]輸出:[2,2]示例2:輸入:nums1 [4,9,5], nums2 [9,4,9,8,4]輸出:[4,9]說明:輸出結果中每個…

11純代碼 oc xcode_iOS代碼染色原理及技術實踐

背景隨著業務的迅速發展,業務代碼邏輯的復雜度增加。QA測試的質量對于產品上線后的穩定性更加重要。一般QA測試的工作流程分為兩大項:自動化測試和人工測試。這兩種測試后都需要得到代碼覆蓋率。自動化測試的覆蓋率,在雙端都有比較成熟的方案…

刪除了幾個月的照片能找回么_手機刪除照片怎么恢復正常?自動修復,一看就會...

手機刪除照片怎么恢復正常?都說魚的記憶只有七秒鐘,那你的記憶是多久呢?曾經手機拍照留念的照片,是否由于一些微不足道的事情,沖動之下刪掉了!想要還原刪除掉的手機照片,首先要找對照片恢復器:手…

并發測試mysql_Jmeter性能測試系列——結果分析與報告輸出

場景運行結束后,需針對測試結果進行性能分析。通常而言,Jmeter性能測試結果分析可從性能測試指標達成方面著手,然后再分析測試過程中出現的異常情況,逐一判斷是否存在性能風險。1.用戶登陸并發測試結果分析獲取測試指標提取階段獲…

怎樣取消連續包月自動續費_蘋果手機連續包月會員怎么取消 設置iPhone解除應用自動續費...

[閩南網]相信我們都有在用蘋果手機下載軟件,但是有時候一個不小心就被開通了包月續費,這個的話會長期進行扣費,要是不想開通的話可以進行取消,不知道的話可以查看下面的教程。取消收費項目是可以從電腦端和手機端兩個渠道來進行&a…

oracle 空閑連接數_oracle數據庫空閑連接

RMAN-04006: error from auxiliary database: ORA-01034: ORACLE not available在使用rman duplicate復制standby數據庫的時候,由于standby數據庫實例必須處于非mount狀態,所以主數據庫直接連接是會報錯的,需要在standby數據庫服務上的監聽器…

配置snmp_多種設備基于 SNMP 協議的敏感信息泄露漏洞數據分析報告

作者:知道創宇404實驗室1. 更新情況2. 事件概述SNMP協議[1],即簡單網絡管理協議(SNMP,Simple Network Management Protocol),默認端口為 161/UDP,目前一共有3個版本:V1,V…

python 個人所得稅問題_Python實現的個人所得稅計算器

這篇文章主要介紹了Python實現的個人所得稅計算器,涉及Python條件判斷與數值運算相關操作技巧,需要的朋友可以參考下本文實例講述了Python實現的個人所得稅計算器。分享給大家供大家參考,具體如下:# -*- coding: utf-8 -*-"""Created on …

建立項目接口文檔_分享:一步一個腳印,vue入門之使用mockjs搭建vue項目測試服務器...

在以前的文檔中,我們構建了vue項目的整體架構,詳見vue入門:vue項目架構設計起步,現在我們主要對其中的mock server 進行完善。一、概述前后端分離的項目優點之一就是可以前后端并行開發,互不影響。那么在后端接口沒有完…

有效字符區域 獲取textview_Android編程開發之TextView文字顯示和修改方法(附TextView屬性介紹)...

本文實例講述了Android編程開發之TextView文字顯示和修改方法。分享給大家供大家參考,具體如下:一. 新建一個Activity 和 Layout首先在layout文件夾中新建一個activity_main.xml,在新建工程的時候一般默認會新建此xml文件,修改其代碼如下:activity_main.…

單機最大負載_電流互感器允許接入的實際最大二次負載(注電案例1865)

某國外水電站安裝的水輪發電機組,單機額定容量為 120MW,發電機額定電壓為 13.8kV,cosφ0.85。發電機、主變壓器采用發變組單元接線,未裝設發電機斷路器,主變高壓側三相短路時流過發電機的最大短路電流為 19.6kA。發電機…