找回密码
 注册
关于网站域名变更的通知
查看: 146|回复: 2
打印 上一主题 下一主题

关于FPGA中如何运用sdram的问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-2-18 16:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
首先强调一下,不是嵌软核的应用,而是用verilog写的时候怎么用。0 n# j( _" S) W2 ~  Y$ V8 M
前几天在网上看了一些资料,也找到了一些写好的实例工程,可以读写sdram。但是我有一点不明白,以前在单片机中或其他处理器中,直接定义一个变量,它会自动被分配在某一地址,那么,在用FPGA时,我该如何把变量定义在sdram中呢! S5 V) i' b1 |. ?; ^0 t
  • TA的每日心情
    开心
    2022-1-29 15:04
  • 签到天数: 1 天

    [LV.1]初来乍到

    2#
    发表于 2022-2-18 16:51 | 只看该作者
    这个问题,你实际已经问到CPU的工作原理了。首先你要了解单片机的内核--CPU的逻辑原理。给单片机定义的变量的确也是存储在SDRAM(多数是SRAM)中的,操作时是这样的:首先,CPU用固定的时序到指令寄存器(Flash或ROM)中读取指令,发现有一条指令说:来,我这有个数,呆会要用,帮我分配个地方,这个地方编译器已经帮我定好了。
  • TA的每日心情
    开心
    2022-1-24 15:10
  • 签到天数: 1 天

    [LV.1]初来乍到

    3#
    发表于 2022-2-18 17:19 | 只看该作者
    你在FPGA上挂个Flash,和一个SDRAM,Flash里面是你定义的变量在SDRAM中的地址(看清这句话),于是Flash有多少个存储单元,你就可以定义多少个变量了。在FPGA里定义两个reg:POINTER和ACC,只要两个。资源够少吧?用FLASH控制器读FLASH得到一个数据,存储到POINTER,以POINTER为地址,读取SDRAM,得到的数据放到ACC中,一顿加减乘除后,再给它存储到SDRAM中。用这样的方法你可以拥有和操作无数个变量,而只费两个reg。完成这个,其实你就实现了一个最简单的CPU。
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-7-30 03:36 , Processed in 0.109375 second(s), 23 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表