"); //-->
Inout类型在使用和仿真时需要将其理解为2个端口,每个时刻有且只有一个在使用状态。我们在处理时可以将其手动分为2个端口,一个输入,另一个是输出。当用作输入端口时,输出端口处于“高阻”状态,用作输出口时保证时输入处于无效状态。如下图中,将inout类型的sdram_data分解成了输入端口DataFromSDR和输出端口DataToSDR(图1中的绿色方框部分).。分解完成后,就可以正常使用输入和输出端口了(图1中的红色方框部分)。以下题材选自于我的SDR_SDRAM控制器设计。
一,Inout的定义和使用
具体的做法是先定义两个wire型的量DataFromSDR和DataToSDR,然后使用assign语句进行分解。在下图中,可以这样理解:
(1):当bus_wr为1时,意味着要向SDRAM中写入数据,此时的inout要当做输出口使用,把需要输出的数据赋值给DataToSDR,然后通过总线来传递。
(2)当bus_wr为0时,需要从SDRAM中读取数据,inout作为输入口使用此时,输出口已经成为“高阻”,数据通过DataFromSDR传递到系统中。
二,inout的仿真
Inout类型的变量在仿真时同样需要分解,但仿真时对端口的使用刚好和建模时“相反”。图2是仿真和建模之间的关系,在建模中的输出口,仿真里面是要建立对应的输入口,反之亦然。建模设计的是一个SDRAM的控制器,那么仿真系统则模拟了一个SDRAM的工作特性。
在编写testbench时,inout的变量要定义成wire型,这点很重要。定义一个reg型的变量,用来充当“输出口”,由于有reg型的变量data_in已经充当了“输入口”,所以不需要再分解出新的“输入口”了。
在testbench中:
out_con=0;
bus_wr=1;
这样描述, inout已经作为输入口了,输出口此时处于“高阻”状态,数据通过data_in来传递。这也和建模中对应,在建模中,当bus_wr=1时,需要向SDRAM中写入数据,测试系统正是模拟的SDRAM,所以此时就是输入口(在建模中此时inout是输出口)。
在接着的描述中:
DataOut=16'h1401;
out_con=1;
bus_rd=1;
inout作为输出口来使用了,此时需要输出的数据通过DataOut来传递。out_con=1说明在建模中,inout此时是当做输入口使用了,和这里刚好又是对应的。
图4是Modelsim中的截图,从截图中可以看到,系统的输入和输出已经被正确仿真出来了。
图5是在QuartusII中的仿真。注意:在 data _in上有数据时,要将inout类型的sdram_data赋值为高阻“z”,这里的做法其实是和写testbench一样的,此时的bus_wr为1,sdram_data是作为输入口,输出口被置成“高阻”了。sdram_data作为输出口时,bus_wr为0,数据通过data_out传输。
专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们
相关推荐
Stella:Self-Balancing Robot Powered by Nucleus RTOS on TI Stellaris
SONY KV2185电源
怎样在Tornado2.2里卸载pentium里的ftpdLib.o,并将新的ftpdLib.c加载上去?
[原创]4510的定时器中断程序(c)---有问题,请高手赐教
研发了八年基础软件,57 岁的我在 AI 时代迎来了千亿机会
具可编程基准的同步降压型稳压器
IEEE 1588 精密网络同步协议
iDEAL半导体与Mouser电子签署全球分销协议
VHDL语言的层次化设计
大嘴业话:直面国内测试仪器的差距
Molex简化户外安装的Quasar OptiX现场安装连接器在贸泽开售
vlsi系统设计--何时和如何设计超大规模集成电路
vrtxcourse(vrtx培训教材)
SONY KV2184电源
如何在RK3576开发板上运行TinyMaix :超轻量级推理框架
佳能集团发布2025年第二季度财报,影像业务领域持续增长
联芯通欧标新能源车EVCC PLC芯片累计出货突破100万套
[推荐]汽车清洗打腊洗车机-灵骏儿
德州仪器预测性电池管理技术:使电池供电电子设备续航提升高达30%
Other World Computing宣布推出多种4K显示器适配器
[公告]『合作/代理』灵骏儿环保洗车机全国大范围诚征代理商
VHDL硬件描述语言基础
InterDigital最新研究:流媒体成为体育观赛新主场
Board Designer 设计过程
SONY G3F-K电源-1
面向工业应用、基于ARM Cortex-M4的32位单片机家族XMC4000
西门子Veloce CS助力Arm Neoverse计算子系统验证与确认
STR5412电源
SONY G3F-K电源-2
[求助]关于Montavista