FPGA:谁有vhdl语言的I/O复用ram程序啊,就是输入输出用相同端口的,求程序!

 我来答
nereus78e904
2014-01-03 · TA获得超过1.5万个赞
知道大有可为答主
回答量:5463
采纳率:90%
帮助的人:1980万
展开全部
LIBRARY IEEE;
USE IEEE.std_logic_1164.ALL;
USE IEEE.std_logic_unsigned.ALL;
ENTITY sram IS
GENERIC(addr_length:Positive:=5;
bit_wide:Positive:=8);
PORT(wr,rd:IN std_logic;
address:IN std_logic_vector(addr_length-1 DOWNTO 0);
data:INOUT std_logic_vector(bit_wide-1 DOWNTO 0));
END sram;
ARCHITECTURE behavioral OF sram IS
TYPE memory IS ARRAY(addr_length-1 DOWNTO 0) OF std_logic_vector(bit_wide-1 DOWNTO 0);
BEGIN
PROCESS(wr,rd,address,data)
VARIABLE mem:memory;
BEGIN
IF wr='0' AND rd='1' THEN
data <= (OTHERS => 'Z');
mem(conv_integer(address)) := data;
ELSIF wr='1' AND rd='0' THEN
data <= mem(conv_integer(address));
END IF;
END PROCESS;
END behavioral;
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式