相关服务

  • 《现代电子技术》2007年第6期摘录:一种DSP处理器内核的指令级模拟器

如发现有乱码,请点击下面链接浏览原文
正文摘录:

2007年第6期总第245一种DSP处理器内核的指令级模拟器刘振尧,戴麟(东南大学国家专用集成电路系统工程技术研究中心江苏南京210096)摘要:在DSP内核的设计、开发过程中,指令级模拟器可用于汇编程序仿真、调试,有利于加快芯片开发进度。介绍了一种由作者设计ga,~-t-MFC语言,设计面向对象操作界面的DSP内核指令级模拟器,具体地对指令的分析判断由I。ex和yacc实现,可以直观表现出汇编程序运行之后各个寄存器和内存镜像,支持单步和断点调试。关键词:指令级模拟器;DSP;汇编程序;内核中图分类号:TN492文献标识码B文章编号:1004—373X(2007)06—029—02AInstruction——levelSimulatorofDSPProcessorCoreLIUZhenyao,DAILin(NationalASICSystemEngineeringCenter,SoutheastUniversity,Nanjing,210096,China)Abstract:InthedesigningandexploitationprogressofaDSPcore,theinstructionlevelsimulatOrcanbeusedintheemula—tionanddebugging,anditispropitioustOexpeditetherateofdevelopment.Thispaperintroducesainstruction—levelsimula—torofDSPcoredesignedbyauthorthathasainterfaceofOPPbasedonMFC.,inwhichtheinstructionanalysisandjudge—mentisachievedbyLexandyacc.Thesimulatorcanacquitthemirrorimageintheregistersandmemoryvisually,anditsup—portsthebreakandstepdebuggingfunctions.Keywords:instruction—levelsimulator;DSP;assembler;coreDSP内核具有很多突出的优点:如内部具有单独的乘法器,速度快,适用于信号处理的指令系统等。目前DSP处理器已广泛应用在军事、工业、医药、通信、仪器等众多领域。在处理器开发过程中,如何加快开发进度以缩短开发周期,降低开发成本是一个非常重要的问题。而指令级模拟器可以在生成硬件之前对DSP内核的各种指令进行模拟,加快开发进度。所以在芯片开发前期,开发可以模拟DSP内核行为的指令级模拟器就相当必要了。1DSPl6A处理器内核介绍1.1DSPl6A简介DSPl6A内核是由东南大学国家专用集成电路系统工程技术研究中心设计DSP内核,与朗讯公司设计的DSPl6XX系列芯片兼容,用于移动通信和语音处理。DSPl6A处理器内核由数据算术单元、存储器寻址单元、指令高速缓存器和控制部分组成。数据算术单元(DAU)是信号处理算法的主要执行单元,他由16位*16位的乘法器、36位的AI。U和两个36位的累加器aO和a1组成。X地址算术单元由1个16位的加法器、一个偏移寄存器(i)和4个指针寄存器(程序计数器pc、程序返回pr、程序中断pi和图表指针pt)组成。Y地址算术单元由9个收稿日期:2006—08—1816位寄存器和1个16位加法器组成。如图1所示。1.2DSPl6A指令系统介绍DSPl6A内核的每条指令为16位代码,其结构如图2所示。其中的T字段决定指令的类型,如T一“0000x”时,对应的汇编指令为“gotoJA”,T一“1000x”时对应的汇编指令是“callJA”等。2指令级模拟器设计2.1基于MFC的可视化界面设计MFC(MicrosoftFoundationClasses)是一个构架在WindowsAPI之上的C”类别库,主要用于设计软件的可视化视窗界面。指令级模拟器Simulator的软件视窗界面如图3所示。其中,区域1是汇编指令的显示部分,区域2是各个寄存器值得显示部分,区域3是内存地址上值的显示部分。2.2对于指令模拟的实现办法如图3所示,导人汇编指令之后点击区域2中的“AS”按钮,可以生成一个与汇编指令对应的16位机器码,保存在当前目录下的a56.out文件中,对指令的模拟,就是对各个机器码进行判断,并对所做行为进行分析。借助于Lex和Yacc生成C文件可使汇编指令生成机器码以及对16位机器码进行判断。使用Lex和Yacc进行指令分析的过程是:词法分析程序依据Lex规范说明文件29

阅读此文(图):   点击此处在线翻阅