4620|12

2

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

FPGA怎样读外部RAM [复制链接]

硬件连接:
单片机的P0,P2,WR,ALE连接FPGA.

单片机发送:
定义--#define SendOrder *((volatile unsigned char xdata *)(0x0709))
例子--SendOrder=0x01;

问题:FPGA怎样读取地址0x0709上的0x01值?
急,最好能给代码~~

最新回复

低电平有效,在上升沿锁存数据  详情 回复 发表于 2010-1-27 12:13
点赞 关注

回复
举报

1

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
黄色=急,最好能给代码~~
 
 

回复

3

帖子

0

TA的资源

一粒金砂(中级)

板凳
 
它有地址译码电路,单片机给出正确的地址,一般来说,用"写"给出指令,用"读"读取数据和状态,取决于具体实现.
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

4
 
楼主可以参考下:
http://www.eetop.cn/bbs/thread-56069-1-1.html
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

5
 
路过留脚印
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

6
 
还是搞不明白,FPGA怎样通过地址0x0709读到0x01这个值?
可能得通过ALE,WR,RD的时序,那他们的时序又应该怎样判断呢?
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

7
 
FPGA实现了一个总线接口逻辑,能够充当总线上的RAM角色,不过应该只有少数地址上才真正有寄存器.

它在内部对写地址进行译码,把指令送到对应的寄存器,实现指定的操作.
它可能会有若干状态和数据寄存器供MCU读取,也通过总线操作实现.
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

8
 
楼上说的太泛啦...我要的是具体问题,谢谢
 
 
 

回复

9

帖子

0

TA的资源

一粒金砂(中级)

9
 
那你想问的是什么?VHDL的实现?
FPGA里面至少要实现一个地址译码器,至少要实现一个8-BIT的寄存器,当所有的信号(RD/WR)符合一个"CPU写"的时序的时候,如果地址是0x0709,数据(0x01)会被写到寄存器里面去.....
ALE好处理,就是一个锁存器,很简单...
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

10
 

一个简单的VHDL实现,可以对地址0x0709译码,并写入一个字节
library ieee;
use ieee.std_logic_1164.all;

entity test is
    port (
        addr: in std_logic_vector(15 downto 0);
        data: in integer range 0 to 255;
        nwr:  in std_logic;
        nrd:  in std_logic;
        ncs:  in std_logic);
end entity test;

architecture a1 of test is
    signal work_reg:    integer range 0 to 255;
    signal n_reg_write: std_logic;
begin
    n_reg_write <= '0' when (ncs = '0' and addr(15 downto 0) = X"0709" and nwr = '0') else
                   '1';

    process(n_reg_write)
    begin

       if (n_reg_write'event and n_reg_write = '1') then
           work_reg <= data;
       end if;

    end process;

end architecture a1;
 
 
 

回复

3

帖子

0

TA的资源

一粒金砂(初级)

11
 
有CS/WR,没有ALE......
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

12
 
      if (n_reg_write'event and n_reg_write = '1') then
          work_reg <= data;
      end if;
貌视单片机是在n_reg_write下降沿时写数据吧.
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

13
 
低电平有效,在上升沿锁存数据
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表