首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

用了片外ssram,系统出问题了,请帮帮忙!!

用了片外ssram,系统出问题了,请帮帮忙!!

我想用一个片外的ssram代替片内的ram/rom作运行程序用

我先用了一个以前运行成功的程序在片内ram中试验(控制16×16led显字)

能成功运行,即点阵led能显字。。

ide中显示:

nios2-terminal: connected to hardware target using JTAG UART on cable
nios2-terminal: "Nios II Evaluation Board [USB-0]", device 1, instance 0
nios2-terminal: (Use the IDE stop button or Ctrl-C to terminate)

然后我把片内ram去掉再加上片外的ssram(只有这一个存储器。。)

同时reset address和exception address都指向ssram,

ide中的program memory,read only memory,r/w menory,heap memory,stack memory都指向了ssram

ide中同样显示:

nios2-terminal: connected to hardware target using JTAG UART on cable
nios2-terminal: "Nios II Evaluation Board [USB-0]", device 1, instance 0
nios2-terminal: (Use the IDE stop button or Ctrl-C to terminate)

但是实际上点阵led毫无反应。。。

请问各位高手,这是什么原因??怎么解决?

谢谢!!

你光使用sram是不行的,他不能代替rom 的功能,即掉电就没有了。

你应该有flash这类 的掉电保存的芯片 ,然后reset address指向它 。

你可以先调试 一下 sram和nios的连接,在ide中调试点debug。

如果可以调试,说明硬件连接没有问题。

这个版主不太冷 =========================== 我的中电网博客:http://blog.chinaecnet.com/u/20/index.htm
现在片内ram中运行一段代码,对ssram操作一下,看是否正确,如果正确,证明你的ssram组件构建的没有问题。
在交流中前进,共同实现nios的应用。

谢谢两位好心的版主!

我的问题找到了,是时钟接错了,我一开始没加片外ssram时片内一直用的50mhz,

后来加了sram我只把pll的输出时钟生成了85mhz,内部的没改(ssram contorl)

我还想请问一下:如果我只是用jtag在线调试(比如在实验箱上)那么即使reset address指向flash,

也并没有使用它是吧?这时它形同虚设?因为我只用jtag下载了.sof文件。。。他只是下载到了ram或sram

里面是不是?

初学,有不对的地方请帮忙详细解释一下啊

谢谢了!

恩,如果只是调试的话,reset地址设置在什么地方没有什么实际的意义。
在交流中前进,共同实现nios的应用。

关于sopc-builder 中reset address 的设置

SOPC中的reset address 指定的是最终全部软件程序代码下载到的地方,并且程序从reset address 启动。
SOPC中的exception address 指定的是系统异常处理代码存放的地方。如果exception address 和reset address 不一样,那么程序从reset address 启动后将把放在reset address 处的系统异常处理代码拷贝到exception address 。
NIOS II软件中的text address指定的是程序运行的地方。如果text address和reset address 不一样,那么程序从reset address 启动后将把放在reset address 处的普通只读程序代码拷贝到text address 。NIOS II软件中的rodata address指定的是只读数据的存放地方。如果rodata address和reset address 不一样,那么程序从reset address 启动后将把放在reset address 处的只读数据拷贝到rodata address 。
NIOS II软件中的rwdata address指定的是可读写数据的存放地方。如果rwdata address和reset address 不一样,那么程序从reset address 启动后将初始化rwdata address 处的可读写数据。

这个版主不太冷 =========================== 我的中电网博客:http://blog.chinaecnet.com/u/20/index.htm
返回列表