基于ISA总线的计算机与DSP的通信
ISA总线

用ISA总线作DSP与计算机之间的接口
• 在递阶控制系统的设计中,由于DSP系统 经常需要和计算机进行数据交换,在这 种情况下,大多数都是通过总线方式实 现的。因此DSP系统的总线接口设计也是 DSP应用系统设计的重要组成部分。 由于上述的原因,本节将详细介绍 ISA总线
ISA总线插槽和接口卡外观图
主机接口
利用主机接口,可以实现以下功能: 1. 可以控制处理器和处理器的外部总线,访问任何处理 器资源; 2. 可以读写处理器的 IOP 寄存器,以及 EPBx FIFO 缓冲区, 完成对处理器操作模式的配置,以及建立DMA传输等; 3.利用外部口DMA通道,可以实现主机与处理器之间的程 序与数据传输; 4.可以将主机的8位、16位或32位主机数据打包成32位或 48位内部数据; 5. 使用处理器内部消息和向量中断能确保主机命令的有 效执行; 6.能控制与监控处理器的操作; 7.在多处理器系统中,主机对主从处理器都可以访问。Βιβλιοθήκη 返回1ISA总线的引脚定义表
返回1
ISA总线的引脚定义表续
返回1
ISA总线的引脚定义表续
返回1
ISA总线的引脚定义表续
DSP与以太网卡的接口技术研究

接口电路主要实现两种功能:一是与计算机ISA总线相连,包括数据总线读写、地址总线驱动、中断控制信号的产生、存储器读写信号以及I/O端口读写信号的引入等;二是对网卡内部的操作,包括对缓冲RAM的读写、对DP8390的控制、读站地址PROM以及读自举ROM等。表1列出了NE2000网卡接口电路所使用的ISA总线信号(不考虑电源线和地线)。从表1可以看出,网卡接口电路仅使用了50根ISA信号线。通过对网卡工作原理的分析,我们还可以将网卡与DSP之间的接口信号线减至最少。
OUT 60H,PSTART
SPLK #0080H,60H ;设置接收缓冲环终止页面地址寄存器
OUT 60H,PSTOP
SPLK #004CH,60H ;设置边界指针寄存器
OUT 60H,BNRY
SPLK #00FFH,60H ;清网卡中断状态
以太网是当今最受欢迎的局域网之一,它包括了OSI七层模型的物理层和数据链路层的全部内容[1]。在以太网中,网卡用于实现802.3规程,其代表是NOVELL公司的NE2000和3COM公司的3C503、3C508、3C509等网卡。对网卡直接编程就可以实现局域网内任意站点之间的通信而完全抛开了网络操作系统,这就启发我们能否在脱离PC环境的条件下实现网卡与其它微处理器之间的接口,从而建立基于非PC机平台的局域网络。对ISA总线型网卡,要实现这一设想,关键在于怎样利用微处理器及外围辅助电路模拟ISA时序。本文作者根据所做课题需要,通过分析NE2000网卡与微机ISA总线的接口电路,用DSP芯片TMS320F206结合外围电路模拟ISA时序,解决了DSP与NE2000网卡的软、硬件接口问题,初步实现了网卡在非PC机环境下的应用。
DSP与以太网卡的接口技术研究
采用SPI接口实现双DSP双向通信和同步

K y wo d e r s: DS S I; i i ci n l c mmu i ain; y c r n z t n P; P b d r t a o e o nc t o s n h o iai o
在 载 人 航 天 、 人 机 、 控 雷 达 等 尖 端 技 术 领 域 的 无 火 作 动 系 统 中 , 用 双 控 制 器 余 度 技 术 来 提 高 系 统 的 可 靠 常 性 。 个 控 制 器 之 间 就 需 要 一 种 高 效 可 靠 的数 据 通 信 以 两
W ANG i W ANG Xio P n Z Je, a e g, HAO Gu i o Hu
( c o lo lcrnc a d Ifr t n En ie r g, a zo ioo g Unv ri L n h u 7 0 7 C ia) S h o fE e t i n nomai gn ei L n h u Ja tn iest a z o 3 0 0, hn o o n y,
Ex m pe o a l fAppiai l t c on
采用 S I 口实现双 D P双 向通信和 同步 P接 S
王 杰 , 小 鹏 , 国辉 王 赵
( 州 交通 大 学 电子 与信 息 工程 学院 , 肃 兰 州 707 ) 兰 甘 3 0 0
用CPLD实现单片机与ISA总线接口的并行通信

用CPLD实现单片机与ISA总线接口的并行通信摘要:介绍了用ALTERA公司MAX7000系列CPLD芯片实现单片机与PC104ISA总线接口之间的关行通信。
给出了系统设计方法及程序源代码。
关键词:CPLD ISA总线并行通信CPLD(Complex Programmable Logic Device)是一种复杂的用户可编程逻辑器件,由于采用连续连接结构,易于预测延时,从而使电路仿真更加准确。
CPLD是标准的大规模集成电路产品,可用于各种数字逻辑系统的设计。
近年来,由于采用先进的集成工艺和大指量生产,CPLD器件成本不断下降,集成密度、速度和性能大幅度提高,一个芯片就可以实现一个复杂的数字电路系统;再加上使用方便的开发工具,使用CPLD器件可以极大地缩短产品开发周期,给设计修改带来很大方便[1]。
本文以ALTERA公司的MAX7000系列为例,实现MCS51单片机与PC104ISA总线接口的并行通信。
采用这种通信方式,数据传输准确高速,在12MHz晶振的MCS51单片机控制的数据采集系统中,可以满足与PC104 ISA总线接口实时通信的要求,通信速率达200Kbps。
1 系统总体设计方案用CPLD实现单片机与PC104ISA总线接口的并行通信,由于PC104主要完成其它方面的数据采集工作,只是在空闲时才能接收单片机送来的数据,所以要求双方通信的实时性很强,但数据量不是很大。
因此在系统设计中,单片机用中断方式接收数据,PC104采用查询方式接收数据。
系统设计方案如图1所示。
在单片机部分,D[0..7]是数据总线,A[0..15]是地址总线,RD和WR分别是读写信号线,INT0是单片机的外部中断,当单片机的外部中断信号有效时,单片机接收数据。
在CPLD部分,用一片MAX7000系列中的PM7128 ESLC84来实现,用来完成MCS51与PC104ISA总线接口之间的数据传输、状态查询及延时等待。
在PC104ISA部分,只用到PC104的8位数据总线D[0..7],A[0..9]是PC104的地址总线;/IOW和/IOR是对指定设备的读写信号;AEN是允许DMA控制地址总线、数据总线和读写命令线进行DMA传输以及对存储器和I/O设备的读写;IOCHRDY是I/O就绪信号,I/O通道就绪为高,此时处理机产生的存储器读写周期为4需5个时钟周期,MCS51通过置此信号为低电平使CPU插入等待周期,从而延长I/O周期;SYSCLK是系统时钟信号,使系统与外部设备保持同步;RESETDR是上电复位或系统初始化逻辑信号,是系统总清信号。
简析DSP与PC机间的数据通信

简析DSP与PC机间的数据通信
DSP(数字信号处理器)是一种专门用于数字信号处理的处理器,它可以实现高速、高效的数字信号处理功能。
在数字信号处理应用领域,DSP经常需要与PC机进行数据通信,以实现
数据采集、处理、显示等功能。
本文将从以下几个方面简析DSP与PC机间的数据通信。
一、串口通信
串口通信是DSP与PC机间最常见的数据通信方式。
这种通信方式的特点是通信速度较慢,但通信距离较远,对于一些需要长距离传输数据的应用场合十分有用。
串口通信需要使用串口线连接DSP和PC机,并通过串口通信协议进行数据交换。
二、并口通信
并口通信是另一种常用的数据通信方式,它与串口通信相比通信速度更快,但通信距离较短。
并口通信需要使用并口线连接DSP和PC机,并通过并口通信协议进行数据交换。
三、网络通信
网络通信是一种较为高级的数据通信方式,它可以通过局域网、广域网等网络技术实现DSP与PC机之间的数据传输。
网络通信需要使用网络协议进行数据交换,如TCP/IP协议等。
四、USB通信
随着USB技术的不断发展,USB通信也成为了一种越来越受欢迎的数据通信方式。
DSP与PC机间的USB通信可以通过USB线连接,通过USB通信协议进行数据交换。
相比于串口和并口通信,USB通信的通信速度更快,通信距离更远。
总之,在选择DSP与PC机间的数据通信方式时,需要根据实际应用需求选择最合适的通信方式。
不同的通信方式都有其优势和劣势,应该根据实际情况进行选择。
同时,应该根据通信方式选择合适的通信协议,以保证数据的正确传输。
基于ISA总线的ADSP2106x信号处理板的设计

基于 ISA 总线的 ADSP2106x 信号处理板的设计 Design of ADSP2106x Signal Processing Board Based on ISA Bus作者:中国科学院电子学研究所 禹卫东 吴淑梅106x 是 AD 公司推出的一种浮点系列高速 DSP 芯片。
本文主要介绍在 ISA 总线上开发 ADSP2106x 信号处理板的设计原理。
计算机通过板的运行,完成高速信号处理的任务。
信号处理 ISA 总线 ADSP2106x2106x 介绍06x 是 Analog Device(AD)公司推出的一种性能先进的浮点系列高速 DSP 芯片,具有 120MFLOPS 的峰值运算能力。
该速度在当今的 DS但 ADSP2106x 的综合性能却非常优异,这主要是由于它在片上各种资源的平衡和并行处理能力。
它拥有大容量的片内双口 SRAM:ADSPDSP21062 为 2Mb,可供主处理单元和外部接口同时读取。
它的接口丰富,包括 4GB(Byte)空间的外部存储器接口、6 个 Link 接口、2 个同0 个 DMA 通道和 1 个 Host 接口,大量的 DMA 通道使数据进出芯片灵活多样,畅通无阻[1]。
最重要的是,ADSP2106x 拥有非常强的并的仲裁逻辑可使 6 片 ADSP2106x 和 1 个主机很方便地连接在一起并行工作,共享片内和片外资源,对于分布式处理系统非常适合。
06x 的内部结构如图 1 所示[2,3]。
它主要由以下 4 个部分组成:主处理器、内部存储器、I/O 处理器、外部接口。
4 个部分之间通过多条总图 1 ADSP2106x 内部结构框图理器。
它主要完成指令的存取和执行、数据的存取和运算。
主处理器中包括指令执行单元、指令缓存器、2 个地址产生器、通用数据寄存器法器、逻辑单元(ALU)、桶形移位器。
处理器,由于其程序总线和数据总线分开,所以,取指操作和取数操作可以并行不悖,即所谓的哈佛结构。
基于ISA总线多通道控制电路的设计

九十年代以来,我国从俄罗斯相继引进了不同型号的导弹,同时,也引进了配套的导弹测试系统。
近年来,随着导弹测试系统寿命的临近,在国内现有技术基础上延长其使用寿命是维修保障部门的重要任务。
为此研制导弹测试系统关键部件的备件,成为延长系统寿命的一个重要手段。
文中依据某型导弹测试设备的要求,设计并研制了基于ISA总线的多通道控制电路:该电路集成了16路光电隔离输入通道和8路单刀双掷(SPDT)继电器输出通道,每一路输入或输出通道都配有指示灯实时标识目前的状态。
在测试系统中,该控制电路可在ISA测试总线的控制下将数据信号、指令信号和电源信号分配至不同电路,实现对导弹的自动测试。
实际应用结果表明,研制的多通道控制电路达到设计要求,可完全替代俄制电路。
1 ISA总线简介ISA(Industrial Standard Architecture)总线是IBM公司于1984年进一步扩充XT总线标准而形成的。
ISA总线标准支持24位的地址线、16位的数据线;支持11级中断IRQ3~IRQ7、IRQ9~IRQ12、IRQ14~IRQ15;支持7个DMA传输通道DRQ0~DRQ3、DRQ5~DRQ7;支持主从控制、I/O等待和I/O校验等功能。
为了与XT总线保持向下兼容,ISA总线在信号功能的定义和物理接口上均作了特殊的安排,即保持原有的XT总线不变,重新增加一个36线的连接插槽,分成C、D两面,扩充的功能设计在C、D两面的信号线上。
其引脚定义如下:1)数据总线SD7~SD0 SD7~SD0为8位双向三态数据总线,在芯片和主接口间传输命令、数据和状态。
SD7为最高位。
寄存器选择引脚为SA9~SA4、SW DIP-6(板基址011001)和AEN#。
这些引脚决定转换是否响应I/O周期,当AEN#为逻辑低电平且SA9~SA4与6位拨动开关值完全匹配时,内部产生一片选信号使转换响应I/O周期。
2)地址信号SA3~SA0 I/O读写操作时作为转换电路上FPGA芯片内的寄存器选择信号。
DSP与ISA总线PnP卡的接口技术研究

表 ! 8>? )"#* 中 的 4 2 5 配 置 寄 存 器
寄存器地址 说 明 读 2 写 备 注
( "#$ 对 $’$ 卡 的 识 别 技 术
.@0 对 010 卡 的 识 别 过 程 与 微 机 对 010 卡 的 识 别
过程是一模一样的, 图 ! 给 出 了 .@0 对 010 卡 的 识 别 程序流程。 表 # 给 出 了 利 用 上 述 方 法 对 三 个 010 卡 的 识 别 结 果 ,
理,免除了用户因安装新的硬件设备而带来的烦恼。 给大家带来 121 不 需 要 手 工 改 变 设 备 的 开 关 或 跳 线 , 了 好 处 , 但 也 给 在 非 1@ 硬 件 平 台 上 的 应 用 带 来 了 麻 烦 。原 因 在 于 121 的 实 现 必 须 具 备 两 个 条 件 : 一 是 1@ 机 主 板 要 有 支 持 121 的 G<C= ; 二 是 要 有 支 持 121 的 操 作系统, 如 H(29+I, /$ B /J B !""" 等 。当 脱 离 了 1@ 机 环 境,这两个条件皆不具备, 121 设 备 的 应 用 受 到 了 极 大 的 限 制 。 比 如 在 F=1 与 <=> 总 线 接 口 系 统 的 设 计 中 , 一 般 <=> 标 准 的 非 121 设 备 有 固 定 的 系 统 资 源 , 通过跳线或开关手工设置完成后,上电即可对其编 程, 相 应 的 <=> 接 口 卡 就 会 做 出 反 应 。 而 支 持 121 的 接口卡上面没有开关和跳线, 板上的资源需要用软件 首先还必须进 配置; 当 同 时 使 用 多 块 121 接 口 卡 时 , 行 121 卡 的 识 别 , 然后才能对相应的接口卡进行资源 配置。在笔者以前所从事的科研任务中, 需 要 F=1 与
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《国外电子元器件》2008年第9期1引言开放式数控系统从根本上突破了传统封闭式数控系统,是当今数控技术的主流和研究热点,更是新一代数控加工的关键技术。
基于开放式数控系统运动控制卡采用上下位机模式[1],DSP 作为数控系统运动控制卡的核心已广泛应用。
2系统的结构模型TMS320F2812DSP 处理器[2]是TI 公司的32位定点处理器,系统处理能力达150MI/S ,指令周期为6.67ns ,具有较高的实时控制功能。
图1为开放数控系统的结构模型。
包含DSP 插补板、位置反馈、开关量I/O 控制及辅助功能控制、故障检测设计、驱动单元和PC 机等模块。
基于开放数控系统的结构模型设计了运动控制卡,并针对不同控制对象编写控制程序,可实现多种电机四轴联动,从而加工形状不规则零件。
该运动控制卡通过ISA 总线与上位机进行通信,通过驱动电路控制电机运动。
上位机负责加工点的预处理、解释编译,将粗插补的指令通过ISA 总线经双口RAM 传给下位机DSP ;DSP 处理与上位机的通信、精插补以及控制输出,控制电机运动,并返回当前加工状态;FPGA 进行逻辑控制。
这里重点论述PC 机与DSP 的通信实现。
通常,DSP 与PC 机对双口RAM 的访问,即CPU 和外设之间的数据传输方式[3]主要有:查询方式、中断方式、DMA 传送方式。
在查询方式下,CPU 需要不断读取状态字和检测状态字,如果状态字表明外设没准备好,则CPU 须等待,这样就降低了CPU 工作速度,达不到实时性要求。
采用DMA 方法实现双机通信适合通信数据量大的场合,其缺点是双机不能同时访问存储器,在某一时刻只能作为某一个处理器的存储器。
由于本系统设计是实时的,通信量不是很大,因此,适宜采用中断方式。
分配给双口RAM 每侧一个存储单元,该单元称为邮箱或信息中心。
当DSP 系统向右侧地址为1FFEH 的存储单元执行一次写操作,左侧的中断标志信号INTL 有效;当主机响收稿日期:2008-07-17稿件编号:200807039课题来源:陕西省教育厅项目(04jk195)作者简介:熊森(1982-),男,湖北黄冈人,硕士研究生。
研究方向:计算机数控技术。
基于ISA 总线的计算机与DSP 的通信熊森,尚雅层,来跃深(西安工业大学机电工程学院,陕西西安710032)摘要:在开放式数控系统结构模型的基础上,研究了基于ISA 总线的DSP 通信控制原理。
采用中断方式完成了PC 机和DSP 之间的通信。
介绍了以DriverWorks 为工具开发ISA 设备WDM 驱动程序的方法,探讨了中断处理、驱动程序与应用程序之间的通信,简要说明了驱动程序的安装与调试。
通过调试,系统设计运行稳定。
关键词:数控系统;计算机/通信;数字信号处理器;TMS320F2812中图分类号:TN602文献标识码:A文章编号:1006-6977(2008)09-0016-03Communication between computer and DSP based on ISA busXIONG Sen,SHANG Ya-ceng,LAI Yue-shen(Department of Mechanical Engineering Xi ’an Technological University,Xi ’an 710032,China )Abstract:The ISA bus and DSP correspondence control principle is investigated in the basis of the existing open architecture numerical control system.The interrupt method is used to realize the communication between PC and DSP based on the ISA bus.The methods of WDM driver exploitation for ISA device using Driver Works are introduced.The main process of driver program and the keys such as handle interrupt and the communication between the drivers and application are presented.And how to debug and install the drive is explained.Key words:data controller system ;computer/communication ;digital signal processor ;TMS320F2812图1开放数控系统的结构模型网络与通信工程应中断后,向地址为1FFEH 的存储单元执行一次读操作,清除中断标志信号INTL 。
同样,当主机向左侧地址为1FFFH 的存储单元执行一次写操作,右侧的中断标志信号INTL 有效;当右侧响应中断后,向存储单元1FFFH 执行一次读操作,清除中断标志信号INTL 。
此时,1FFEH 和1FFFH 单元中的内容可以由用户定义,如果不使用中断功能,1FFEH 和1FFFH 单元不用作邮箱,仍作为普通的RAM 单元使用。
PC 和DSP 都只能读自己一侧的邮箱和写对方的邮箱。
图2是PC 机与DSP 通信流程图。
3WDM 设备驱动程序的开发3.1WDM 驱动程序Windows 是通过设备驱动程序实现与个人计算机通信[4]。
编写驱动程序的方法有多种,本系统设计采用WDM 驱动程序。
WDM 驱动程序模型中每个硬件设备至少有两个驱动程序,其中一个为功能驱动程序,即硬件设备驱动程序。
该驱动程序了解硬件工作的所有细节,负责I/O 初始化带来的中断事件,为用户提供一种适合的控制方式;另一个驱动程序为总线驱动程序,用于管理硬件与计算机的连接。
WDM 驱动程序采用分层的结构模型,如图3所示,图中左边是一个设备对象堆栈,设备对象是操作系统为帮助软件管理硬件而创建的数据结构。
处于堆栈最底层的设备对象为物理设备对象(简称PDO )。
设备对象堆栈中有一个功能设备对象(简称FDO )。
在FDO 的上面和下面可能还会有一些过滤器设备对象,简称FiDO 。
位于FDO 上面的过滤器设备对象称为上层过滤器,位于FDO下面的过滤器设备对象称为下层过滤器。
层次结构使I/O请求过程更加明了,影响到设备的每个操作都使用I/O 请求包。
通常,IRP 先被送到设备堆栈的最上层驱动程序,然后逐渐过滤到下面的驱动程序。
每一层驱动程序都可以决定如何处理IRP 。
有时驱动程序不做任何事,仅仅是向下层传递该IRP ;有时驱动程序直接处理完IRP ,不再向下传递;或者驱动程序既处理了IRP ,又把IRP 传递下去。
这取决于设备以及IRP 所携带的内容。
为了编写Windows 设备驱动程序,根据不同的数据流向来说明数据传递过程,如图4所示。
3.2WDM 驱动程序的开发环境该系统设计的WDM 驱动程序编程环境的建立,WDM 的创建、生成和安装都在Windows 2000操作系统下进行,所需的开发工具包括:Visual C++6.0,Windows 2000DDK ,Plat -form SDK 和NuMega DriverStudio 2.6,可依次安装这些开发工具。
3.3WDM 驱动程序的创建Driverstudio 安装完成后,Visual C++编程工具栏中自动添加一个菜单Driverstudio 。
此时打开DriverWorks\source 目录下的VdwLibs.dsw ,对其编译从而创建库文件。
选择DriverStudio 下的Driver Wizard 创建WDM 框架程序,在创建一个WDM 程序框架时,共有10个选择界面,按照所需要求,选择相对应的选项,创建成功,如图5所示。
图5中Qudong.cpp 为驱动类文件,QudongDevice.cpp 为驱动设备类文件,Qudong.inf 为驱动安装指导文件,Test_qudong.cpp 为测试用的控制台程序文件。
此时已经具备了一个驱动程序以及测试用的应用程序基本框架,可在VC 集成环境下修改有关程序或增加相关具体操作代码,然后就可以进行编译调试。
图2PC 机与DSP 通信的流程图图3WDM 设备对象和驱动程序的层次结构图4通信数据流程图图5WDM 驱动程序框架《国外电子元器件》2008年第9期创建WDM时,可同时选择创建Win32应用程序,这里可选择创建Win32Console和MFC应用程序,由于Win32 Console是基于DOS界面,所以选用MFC应用程序。
接下来就是解决应用程序与驱动程序之间的通信问题。
(1)应用程序对WDM的通信应用程序先调用WDM的CreatFile函数打开设备,然后用Device IO Control和WDM通信。
在应用程序中,若想打开中断,先通过ReadFile获取中断使能寄存器的值,若该值为0,则通过WriteFile往该寄存器写入1打开中断。
若想关闭中断,先ReadFile获取中断使能寄存器的值,若该值为1,则通过WriteFile往该寄存器写入0关闭中断。
应用程序中的Read-File和WriteFile不能直接访问设备,而是通过驱动程序的read和write例程访问设备。
当应用程序退出时,采用Close-Handle关闭设备。
(2)驱动程序与应用程序的通信WDM采用Device IO Control异步完成与应用程序的通信以及Win32事件通知、创建命名事件。
系统设计采用Win32事件通知方式,当WDM捕捉到特定事件(中断)时,则可与应用程序通信。
此时应用程序的编程涉及到多线程编程问题,可采用主线程用于发送数据,次线程始终处于等待状态等待WDM唤醒的方式解决。
当WDM捕捉到特定事件时,给处于等待的这一线程发送消息,将其唤醒,同时主线程处理相应工作。
3.4WDM驱动程序的安装与调试在安装WDM驱动程序前,应修改上叙所生成的*.inf 文件,然后将其拷贝到“..\sys\objchk\i386”目录下,运行“控制面板”中“添加/删除硬件”,找到WDM范例按其向导逐步安装即可。
采用SoftICE和DriverMonitor作为调试工具,基本调试过程如下:首先使用Symbol-Loader加载驱动程序,然后使用SoftICE跟踪调试,确认驱动程序正常加载。
对核心的中断响应程序代码,用SoftICE中的Genint命令产生虚拟中断,硬件发送大量数据,通过查看内存数据,确认传输是否正确。