当前位置: 首页 > 专利查询>东南大学专利>正文

基于UART的面向计算机系统实践教学的程序在线下载系统和方法技术方案

技术编号:24946140 阅读:60 留言:0更新日期:2020-07-17 22:55
本发明专利技术公开了基于UART的面向计算机系统实践教学的程序在线下载系统和方法,本发明专利技术将程序的机器码转换为适于UART下载的.txt文本形式的ASCII字符流;获取ASCII字符流的信息,并据此控制ASCII字符流的下载过程;将ASCII字符流中的程序和数据通过UART分别写入到CPU的程序ROM和数据RAM;下载完毕后,置位下载完成信号,并通过UART向串口调试助手返回下载成功的消息。本发明专利技术将程序机器码转换成可下载的ASCII字符流,以便使用第三方串口调试助手实现程序下载,提高易用性;为基于FPGA自行设计CPU实现了程序在线下载系统和方法,大幅提高计算机系统实践教学实验效率;移植时,与基于JTAG的程序下载方案相比,本发明专利技术的系统和方法仅需对存储器接口做少许修改,更简单易用,可移植性更强。

【技术实现步骤摘要】
基于UART的面向计算机系统实践教学的程序在线下载系统和方法
本专利技术适用于计算机系统实践教学系列课程的汇编程序实验,属于计算机教学实验仪器
,尤其涉及基于UART的面向计算机系统实践教学的程序在线下载系统和方法。
技术介绍
目前计算机系统实践教学实验系统和方法主要分为两类:一类依靠计算机软件对真实的硬件实验平台进行模拟和仿真,另一类则让实验参与者到实验室中使用真实的硬件实验平台进行实验。与软件模拟仿真相比,使用真实硬件实验平台具有反馈及时、体验真切、效果优良的优势。特别地,FPGA由于具有可重构、灵活性高等优点,近年来在计算机系统实践教学当中崭露头角。鉴于FPGA的优点,目前已有一系列的计算机系统实践教学课程在基于FPGA的硬件实验平台上开展开来,如数字电路课程实验、计算机组成原理课程设计、微型机接口技术课程实验等。其中,部分课程实验或课程设计要求实验参与者在基于FPGA实现的CPU上进行汇编程序设计。实验参与者在使用汇编语言编程时,无论CPU设计是否被修改,都需要将汇编程序连同整个CPU设计在IDE中进行综合、实现并生成比特流文件,整个过程耗时严重,实验效率低下。因此,急需解决“计算机系统实验教学课程中,程序无法在线下载”的问题。
技术实现思路
针对现有技术中存在的问题,本专利技术提供基于UART的面向计算机系统实践教学的程序在线下载系统和方法,能够将用户程序机器码转换为特定格式的ASCII字符流,并在串口调试助手中将ASCII字符流通过程序下载IP核下载到CPU的程序ROM和数据RAM中,实现程序的在线下载。为达到上述目的,本专利技术提供基于UART的面向计算机系统实践教学的程序在线下载系统,包括汇编器、COE翻译器、UARTCoe工具、串口调试助手以及硬件实验平台五个组成部分。汇编器根据CPU的指令集架构,将用户编写的.asm汇编程序汇编形成可执行文件。COE翻译器读取并解析可执行文件,提取可执行文件中的代码段和数据段,并将其转换为.coe文件。所述的.coe文件为Xilinx公司设计的用于初始化BlockRAM存储器的具有特定格式的文件。UARTCoe工具读取并解析.coe文件,生成ASCII字符流,形成适于下载的具有特定格式的.txt文件。串口调试工具为支持十六进制编码下载ASCII字符流的任意第三方工具。硬件实验平台采用以XilinxArtix-7系列FPGA为主芯片的低功耗FPGA开发板卡,该硬件实验平台还包含存储芯片和UART、拨码开关、LED等基本外设部件。基于UART的面向计算机系统实践教学的程序在线下载方法,包括如下步骤:(1)用户根据CPU的指令集架构,使用相应的汇编器,将所编写的.asm汇编程序汇编形成可执行文件;(2)COE翻译器将可执行文件翻译成遵循.coe文件格式的机器码;(3)UARTCoe工具统计.coe机器码的字节数,并将该机器码转换为适于UART下载的.txt文本形式的ASCII字符流;(4)串口调试助手以十六进制编码读取ASCII字符流,并通过UART接口,将其下载到位于硬件实验平台上的CPU;(5)程序下载IP核解析ASCII字符流,将ASCII字符流中的代码段写入到CPU的程序ROM,将ASCII字符流中的数据段写入到CPU的数据RAM;(6)程序下载完毕后,程序下载IP核将程序下载完成信号设置为有效,并通过UART串行通信接口,在串口调试助手中向用户返回程序下载成功的消息;(7)用户通过复位按钮,复位CPU,所下载的程序开始运行。其中,所述的硬件实验平台采用以XilinxArtix-7系列FPGA为主芯片的低功耗FPGA开发板卡,该硬件实验平台还包含存储芯片和UART、拨码开关、LED等基本外设部件。所述的汇编器和串口调试助手由用户或第三方人员设计与实现;所述的汇编器读取CPU的指令集格式表,对汇编程序的各条汇编指令进行解析和翻译,生成二进制机器码,并按照可执行文件的格式,将机器码写入文件,形成可执行文件;所述的串口调试助手以用户设定的串口参数,调用系统库函数打开UART串口,并调用系统库函数,将用户的输入数据通过UART串口发送给下位机,并调用系统库函数,通过UART串口接收下位机信息,并将其显示在软件界面上。所述的COE翻译器按照步骤(1)中生成的可执行文件的格式,解析可执行文件的各个格式字段,从可执行文件中提取出程序的程序段代码数据和数据段代码数据,并根据CPU的特性以及.coe文件的格式,将所提取的程序段代码数据和数据段代码程序写入到.coe文件的特定地址。所述的UARTCoe工具按照步骤(2)中生成的.coe文件的格式,解析.coe文件,统计.coe文件的字节数,形成数据包头部;所述的UARTCoe工具读取.coe文件的内容,形成数据包的有效数据载荷,最终将所形成的数据包写入到.txt文件中。在步骤(5)中,所述的程序下载IP核以封装好的IP核的形式集成到整个电路当中,通过配置,可支持16位及32位数据宽度的BlockRAM存储器;该IP核包含协议解析模块、数据解析模块、BlockRAM接口模块、控制器模块和数据发送模块;所述的协议解析模块对UART串行通信协议进行解析,提取UART串行传输信号中的有效数据;所述的数据解析模块对协议解析模块提取出的ASCII字符流进行解析,从ASCII字符流中提取出控制信息和数据内容;所述的BlockRAM接口模块按照BlockRAM接口协议,将ASCII字符流中的数据内容写入到CPU的程序ROM和数据RAM;所述的控制器模块实时监控协议解析模块和数据解析模块,当程序在线下载完成后,置位下载完成信号;所述的数据发送模块在检测到下载完成信号有效后,将消息缓存区中的消息发送给串口调试助手。本专利技术的基于UART的面向计算机系统实践教学的程序在线下载系统和方法,其特征在于:适用于具有以下特征的计算机系统:(1)在基于FPGA的硬件实验平台(或开发板)上,使用FPGA可编程逻辑资源,实现自行设计的CPU;(2)基于FPGA内部的BlockRAM(或BlockMemory)存储器实现CPU的程序ROM或数据RAM。相对于现有技术,本专利技术的优点如下:1、本专利技术能够将程序机器码转换成可下载的ASCII字符流,以便使用第三方串口调试助手实现程序下载,提高易用性;2、本专利技术为基于FPGA自行设计CPU实现了程序在线下载系统和方法,大幅提高计算机系统实践教学实验效率;3、移植时,与基于JTAG的程序下载方案相比,本专利技术的程序在线下载系统和方法仅需对CPU的存储器接口做少许修改,更简单易用,可移植性更强。附图说明图1是本专利技术的基于UART的程序在线下载系统和方法的工作机制示意图及硬件实验平台结构图。图2是本专利技术的程序下载IP核的模块结构图。图3是使用本专利技术的基于UART的程序在线下载方法的CPU状态转换图。具体实本文档来自技高网...

【技术保护点】
1.基于UART的面向计算机系统实践教学的程序在线下载系统,其特征在于:所述系统包括汇编器、COE翻译器、UARTCoe工具、串口调试助手以及硬件实验平台五个组成部分;所述的汇编器根据CPU的指令集架构,将用户编写的.asm汇编程序汇编形成可执行文件;所述的COE翻译器读取并解析可执行文件,提取可执行文件中的代码段和数据段,并将其转换为.coe文件;所述的.coe文件为Xilinx公司设计的用于初始化Block RAM存储器的具有特定格式的文件;所述的UARTCoe工具读取并解析.coe文件,生成ASCII字符流,形成适于下载的具有特定格式的.txt文件;所述的串口调试工具为支持十六进制编码下载ASCII字符流的任意第三方工具;所述的硬件实验平台采用以Xilinx Artix-7系列FPGA为主芯片的低功耗FPGA开发板卡,该硬件实验平台还包含存储芯片和UART、拨码开关、LED等基本外设部件。/n

【技术特征摘要】
1.基于UART的面向计算机系统实践教学的程序在线下载系统,其特征在于:所述系统包括汇编器、COE翻译器、UARTCoe工具、串口调试助手以及硬件实验平台五个组成部分;所述的汇编器根据CPU的指令集架构,将用户编写的.asm汇编程序汇编形成可执行文件;所述的COE翻译器读取并解析可执行文件,提取可执行文件中的代码段和数据段,并将其转换为.coe文件;所述的.coe文件为Xilinx公司设计的用于初始化BlockRAM存储器的具有特定格式的文件;所述的UARTCoe工具读取并解析.coe文件,生成ASCII字符流,形成适于下载的具有特定格式的.txt文件;所述的串口调试工具为支持十六进制编码下载ASCII字符流的任意第三方工具;所述的硬件实验平台采用以XilinxArtix-7系列FPGA为主芯片的低功耗FPGA开发板卡,该硬件实验平台还包含存储芯片和UART、拨码开关、LED等基本外设部件。


2.基于UART的面向计算机系统实践教学的程序在线下载方法,其特征在于:包括如下步骤:
(1)用户根据CPU的指令集架构,使用相应的汇编器,将所编写的.asm汇编程序汇编形成可执行文件;
(2)使用发明人自行设计的COE翻译器将可执行文件翻译成遵循.coe文件格式的机器码;
(3)使用发明人自行设计的UARTCoe工具统计.coe机器码的字节数,并将该机器码转换为适于UART下载的.txt文本形式的ASCII字符流;
(4)使用串口调试助手以十六进制编码读取ASCII字符流,并通过UART接口,将其下载到位于硬件实验平台上的CPU;
(5)使用发明人自行设计的程序下载IP核解析ASCII字符流,将ASCII字符流中的代码段写入到CPU的程序ROM,将ASCII字符流中的数据段写入到CPU的数据RAM;
(6)程序下载完毕后,使用发明人自行设计的程序下载IP核将程序下载完成信号设置为有效,并通过UART串行通信接口,在串口调试助手中向用户返回程序下载成功的消息;
(7)用户通过复位按钮,复位CPU,所下载的程序开始运行。


3.根据权利要求2所述的基于UART的面向计算机系统实践教学的程序在线下载方法,其特征在于:所述的汇编器和串口调试助手由用户或第三方人员设计与实现;所述的汇编器读取CPU的指令集格式表,对汇编程序的各条汇编指令进行解析和翻译,生成二进制机器码,并按照可执行文件的格式,将机器码写入文件,形成可执行文件;所述的串口调试助手以用户设定的串口参数...

【专利技术属性】
技术研发人员:杨全胜江仲鸣刘中元朱泳波陆志成许恒煜杨英豪
申请(专利权)人:东南大学
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1