这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » 2407A 有请版主和各位,请教一个 2407A 硬件设计方面的问题

共2条 1/1 1 跳转至

2407A 有请版主和各位,请教一个 2407A 硬件设计方面的问题

院士
2006-09-17 18:14:16     打赏
2407A 有请版主和各位,请教一个 2407A 硬件设计方面的问题



关键词: 2407A     有请     主和     各位     请教     一个     硬件         

院士
2006-12-22 22:43:00     打赏
2楼

请版主大人和各位大侠给点意见,先谢谢了!

具体现象描述如下:

    新制作的实验板一块,外扩一片 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、AVRPIC16 等系列单片机的应用技术,而且很有耐心做 Debug 工作。

这次的现象还没有想清原因?相信大家在这个领域里一定有许多经验,是否有过类似的经历,能够给提点一下! 4: 再顶一下再顶一下 5: 仿真时有啥提示和现象?建议把61LV6416的引脚再仔细焊一下,你的板子功耗大吗?
外围电路驱动负载能力是否够用?仿真时可以用示波器观察一下61LV6416的
控制引脚. 6: 自己的问题只有自己能解决一般我在论坛上发帖没人能帮忙,最后都是自己解决的.
除非问题比较简单或有代表性.
也不是说别人不管,确实有的问题一两句话说不明白.
这个问题我也在关注,因为我也要做2407的板子了,上面带RAM. 7: 还有仿真时,mp/-mc引脚需接高电平! 8: 看看硬件你在view-memory-program空间下依次从0000h-ffffh抽查,随意改写某个地址单元的数据,刷新后,看有没有异常,如发现写的内容不对或其他地址内容变化了这证明程序ram有问题,检查一下焊接在试试,总之调试是先硬件后软件

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]