共2条
1/1 1 跳转至页
2407A 有请版主和各位,请教一个 2407A 硬件设计方面的问题

问
请版主大人和各位大侠给点意见,先谢谢了!
具体现象描述如下:
新制作的实验板一块,外扩一片 64K*16 SRAM(61LV6416)作仿真程序区(PS、RD、WE 作控制信号),一片 32K*16 SRAM(61LV3216)作数据区(DS、RD、WE 作控制信号)。制作完成后,可以通过 JTAG 将程序写入 DSP 芯片,程序运行正常(运行结果通过232口发送到PC机)。
但是在仿真时却出现了问题,进入 CCS 和下载程序都没有问题,也没有报错。但是将程序 LOAD 到片外 RAM 后,在汇编窗口中只能看到部分程序(代码不完整),运行不起来(程序下载到买来的开发板上,运行正常)。
经仔细测量PCB线路连接,可以确认没有连接错误。MP/MC 模式设置无误。RESET 管脚没有干扰信号。应该上拉的管脚(ENA_144、BOOT_EN、VIS_OE、BIO)均已上拉。芯片供电 3.3V 非常干净(TPS7333Q)。
本人原先有较多的8位单片机设计经验,第一次使用DSP。为了稳妥起见,扩展 SRAM 没有采用片外逻辑译码方式,而是直接采用 DSP 芯片的控制管脚进行读写控制。
修改.CMD 文件,将程序 LOAD 到不同的 SRAM 区域,都无法仿真。实在是费解?所用的 CCS 软件是随仿真器一起来的。
是不是因为PCB布线的时候太讲究好看了,DSP 的地址线和数据线都有许多较近距离的平行线(线宽10mil,中心间距20-25mil),造成高速读写时驱动的容抗较大? 买了一片瑞泰创新的开发板,布线看上去比较乱,像是自动布线的结果,但下载、仿真都很正常。
仿真所用的 .CMD 文件 和中断向量表 .asm 文件如下:
.CMD 文件:
-stack 0x200
MEMORY
{
PAGE 0:
VECTS : origin = 0x0000, length = 0x0040
CODES : origin = 0x0044, length = 0xF000
PAGE 1:
B0B1 : origin = 0x0200, length = 0x0200
B2 : origin = 0x0060, length = 0x0020
SARAM : origin = 0x0800, length = 0x0800
EXRAM : origin = 0x8000, length = 0x8000
}
SECTIONS
{
.vectors : load = VECTS PAGE 0
.text : load = CODES PAGE 0
.cinit : load = CODES PAGE 0
.data : load = SARAM PAGE 1
.bss : load = SARAM PAGE 1
.const : load = SARAM PAGE 1
.switch : load = CODES PAGE 0
.stack : load = B0B1 PAGE 1
.system : load = SARAM PAGE 1
}
.asm 文件
.ref _c_int0
.ref _int1,_int2,_int3,_int4,_int5,_int6
.sect ".vectors"
RSVECT B _c_int0
INT1 B _int1
INT2 B _int2
INT3 B _int3
INT4 B _int4
INT5 B _int5
INT6 B _int6
以上两个文件都是从我所读的资料上整理得来的,应该是最常用的形式。
答 1: 把问题说清楚一点!制作完成后,可以通过 JTAG 将程序写入 DSP 芯片,程序运行正常(运行结果通过232口发送到PC机)。
但是在仿真时却出现了问题,进入 CCS 和下载程序都没有问题,也没有报错
你的串口通信是不是脱机运行,也就是说能把程序烧写到片内程序存储器中吗? 答 2: 呵呵,程序不超过32k字,可以采用一片61LV6416就够啦! 答 3: 接 yang96381 的答复是先写好了程序,在买来的开发板上调试通过了。因为在自制的板子上仿真通不过,才想到将程序写入 Flash 试一下的。
没想到写入后运行时一切正常,怀疑外扩 SRAM 部分有问题,但是我只用了 PS、DS、RD、WE 这4根控制信号线,外加地址线、数据线。本人虽然没有用过 DSP 但也做过不少项目,熟悉MCS51、AVR、PIC16 等系列单片机的应用技术,而且很有耐心做 Debug 工作。
这次的现象还没有想清原因?相信大家在这个领域里一定有许多经验,是否有过类似的经历,能够给提点一下! 答 4: 再顶一下再顶一下 答 5: 仿真时有啥提示和现象?建议把61LV6416的引脚再仔细焊一下,你的板子功耗大吗?
外围电路驱动负载能力是否够用?仿真时可以用示波器观察一下61LV6416的
控制引脚. 答 6: 自己的问题只有自己能解决一般我在论坛上发帖没人能帮忙,最后都是自己解决的.
除非问题比较简单或有代表性.
也不是说别人不管,确实有的问题一两句话说不明白.
这个问题我也在关注,因为我也要做2407的板子了,上面带RAM. 答 7: 还有仿真时,mp/-mc引脚需接高电平! 答 8: 看看硬件你在view-memory-program空间下依次从0000h-ffffh抽查,随意改写某个地址单元的数据,刷新后,看有没有异常,如发现写的内容不对或其他地址内容变化了这证明程序ram有问题,检查一下焊接在试试,总之调试是先硬件后软件
请版主大人和各位大侠给点意见,先谢谢了!
具体现象描述如下:
新制作的实验板一块,外扩一片 64K*16 SRAM(61LV6416)作仿真程序区(PS、RD、WE 作控制信号),一片 32K*16 SRAM(61LV3216)作数据区(DS、RD、WE 作控制信号)。制作完成后,可以通过 JTAG 将程序写入 DSP 芯片,程序运行正常(运行结果通过232口发送到PC机)。
但是在仿真时却出现了问题,进入 CCS 和下载程序都没有问题,也没有报错。但是将程序 LOAD 到片外 RAM 后,在汇编窗口中只能看到部分程序(代码不完整),运行不起来(程序下载到买来的开发板上,运行正常)。
经仔细测量PCB线路连接,可以确认没有连接错误。MP/MC 模式设置无误。RESET 管脚没有干扰信号。应该上拉的管脚(ENA_144、BOOT_EN、VIS_OE、BIO)均已上拉。芯片供电 3.3V 非常干净(TPS7333Q)。
本人原先有较多的8位单片机设计经验,第一次使用DSP。为了稳妥起见,扩展 SRAM 没有采用片外逻辑译码方式,而是直接采用 DSP 芯片的控制管脚进行读写控制。
修改.CMD 文件,将程序 LOAD 到不同的 SRAM 区域,都无法仿真。实在是费解?所用的 CCS 软件是随仿真器一起来的。
是不是因为PCB布线的时候太讲究好看了,DSP 的地址线和数据线都有许多较近距离的平行线(线宽10mil,中心间距20-25mil),造成高速读写时驱动的容抗较大? 买了一片瑞泰创新的开发板,布线看上去比较乱,像是自动布线的结果,但下载、仿真都很正常。
仿真所用的 .CMD 文件 和中断向量表 .asm 文件如下:
.CMD 文件:
-stack 0x200
MEMORY
{
PAGE 0:
VECTS : origin = 0x0000, length = 0x0040
CODES : origin = 0x0044, length = 0xF000
PAGE 1:
B0B1 : origin = 0x0200, length = 0x0200
B2 : origin = 0x0060, length = 0x0020
SARAM : origin = 0x0800, length = 0x0800
EXRAM : origin = 0x8000, length = 0x8000
}
SECTIONS
{
.vectors : load = VECTS PAGE 0
.text : load = CODES PAGE 0
.cinit : load = CODES PAGE 0
.data : load = SARAM PAGE 1
.bss : load = SARAM PAGE 1
.const : load = SARAM PAGE 1
.switch : load = CODES PAGE 0
.stack : load = B0B1 PAGE 1
.system : load = SARAM PAGE 1
}
.asm 文件
.ref _c_int0
.ref _int1,_int2,_int3,_int4,_int5,_int6
.sect ".vectors"
RSVECT B _c_int0
INT1 B _int1
INT2 B _int2
INT3 B _int3
INT4 B _int4
INT5 B _int5
INT6 B _int6
以上两个文件都是从我所读的资料上整理得来的,应该是最常用的形式。
答 1: 把问题说清楚一点!制作完成后,可以通过 JTAG 将程序写入 DSP 芯片,程序运行正常(运行结果通过232口发送到PC机)。
但是在仿真时却出现了问题,进入 CCS 和下载程序都没有问题,也没有报错
你的串口通信是不是脱机运行,也就是说能把程序烧写到片内程序存储器中吗? 答 2: 呵呵,程序不超过32k字,可以采用一片61LV6416就够啦! 答 3: 接 yang96381 的答复是先写好了程序,在买来的开发板上调试通过了。因为在自制的板子上仿真通不过,才想到将程序写入 Flash 试一下的。
没想到写入后运行时一切正常,怀疑外扩 SRAM 部分有问题,但是我只用了 PS、DS、RD、WE 这4根控制信号线,外加地址线、数据线。本人虽然没有用过 DSP 但也做过不少项目,熟悉MCS51、AVR、PIC16 等系列单片机的应用技术,而且很有耐心做 Debug 工作。
这次的现象还没有想清原因?相信大家在这个领域里一定有许多经验,是否有过类似的经历,能够给提点一下! 答 4: 再顶一下再顶一下 答 5: 仿真时有啥提示和现象?建议把61LV6416的引脚再仔细焊一下,你的板子功耗大吗?
外围电路驱动负载能力是否够用?仿真时可以用示波器观察一下61LV6416的
控制引脚. 答 6: 自己的问题只有自己能解决一般我在论坛上发帖没人能帮忙,最后都是自己解决的.
除非问题比较简单或有代表性.
也不是说别人不管,确实有的问题一两句话说不明白.
这个问题我也在关注,因为我也要做2407的板子了,上面带RAM. 答 7: 还有仿真时,mp/-mc引脚需接高电平! 答 8: 看看硬件你在view-memory-program空间下依次从0000h-ffffh抽查,随意改写某个地址单元的数据,刷新后,看有没有异常,如发现写的内容不对或其他地址内容变化了这证明程序ram有问题,检查一下焊接在试试,总之调试是先硬件后软件
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【EEPW电子工程师创研计划】技术变现通道已开启~ | |
发原创文章 【每月瓜分千元赏金 凭实力攒钱买好礼~】 | |
【EEPW在线】E起听工程师的声音! | |
“我踩过的那些坑”主题活动——第001期 | |
高校联络员开始招募啦!有惊喜!! | |
【工程师专属福利】每天30秒,积分轻松拿!EEPW宠粉打卡计划启动! | |
送您一块开发板,2025年“我要开发板活动”又开始了! | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
多组DCTODC电源方案被打赏50分 | |
【我踩过的那些坑】STM32cubeMX软件的使用过程中的“坑”被打赏50分 | |
新手必看!C语言精华知识:表驱动法被打赏50分 | |
【我踩过的那些坑】杜绑线问题被打赏50分 | |
【我踩过的那些坑】STM32的硬件通讯调试过程的“坑”被打赏50分 | |
【我踩过的那些坑】晶振使用的问题被打赏100分 | |
【我踩过的那些坑】电感选型错误导致的处理器连接不上被打赏50分 | |
【我踩过的那些坑】工作那些年踩过的记忆深刻的坑被打赏10分 | |
【我踩过的那些坑】DRC使用位置错误导致的问题被打赏100分 | |
我踩过的那些坑之混合OTL功放与落地音箱被打赏50分 |