当前位置:首页 > 嵌入式 > 嵌入式软件
[导读]基于ARM嵌入式系统的PC/104总线设计

当前已经进入嵌入式系统全面应用时代,基于ARM处理器和嵌入式Linux的嵌入式系统以其设计灵活、软硬件可裁剪、性能优越、成本低等特点和优势,倍受设计者和使用者青睐。

        其在低功耗、低成本应用领域确立了其市场领导地位;同时随着x86架构的不断成熟和x86处理器的应用范围越来越广,人们逐步开始认识到其本身架构的限制,在工业控制领域嵌入式ARM处理器将有望取代传统的X86处理器。
  

        PCI04总线是一种近年来在国际上广泛流行的专门为嵌入式系统而定义的工业控制总线,被IEEE协会定义为IEEE-P996,该系列产品已广泛应用于通信设备、车辆导航、工程控制等各种领域。由于PC或PC/AT的主板和扩展卡的尺寸及功耗标准都太大,。ISA总线不能满足嵌入式系统的发展的需要。PC/104作为从。ISA总线转变而来的接口总线,主要是为了适应嵌入式系统发展的需要,但是这种早期的总线结构是建立在Intel的x86架构之上的,在ARM体系结构下,还没有一个统一的标准可以提供对PC/104总线的支持,因为ARM在体系架构、总线时序、电气性能等方面和x86都有很大的区别。本文将提出一种在ARM处理器上支持PC/104总线的解决方案。

  l 系统总体设计

  系统的工作原理:PC/104总线上的1/O和Memory各16 MB空间用nGCS2和nGCS3选通,分别映射到的S3C24lO存储空间Bank2和Bank3的ROM/SRAM上。由于S3C24:10和CPLD在电平模式、制造工艺上都和PC/104总线标准有差异,故选用器件74LVHl62245做3.3~5 V电平转换器Buffer的方式来调整电气特性,进行TTL电平和LVTTL电平的转换,并增强驱动能力。PC/104总线上的8个中断请求信号IRQ[3:11]经bairer直接连接到S3C:2410的EINT[O:7];将S3C2410地址线SAddr[1:23]通过Buffer直接连接到Pc/104总线的Addr[1:19]和LAddr[17:23],.Addr0由控制器给出,当总线为8位数据传输时有效。由于复杂可编程器件CPLD的集成度高,与专用集成电路相比,具有设计灵活、开发周期短、设计制造成本低、大大节省了硬件资源优点,可选用他来做PC/104总线的控制器,主要是完成S3C2410读写时序向PC/104总线读写时序的转换,对输入控制信号译码,提供PC/104总线和S3C2410处理器的控制信号,同时产生PC/104所需要的时钟信号。S3C2410数据总线D[O:15]经CPLD输出到Buffer(Buffer上的数据传输方向由控制信号Data dir控制),连接到PC/104的数据总线上。因此总线控制设计的关键是保证控制器CPLD的时序的正确。其原理框图如图1所示。

2 PC/104总线控制器的实现

  2.1 PC/104总线简介

  PC/104模块具有独特的堆叠式总线扩展方式、体积小、功耗低、可靠性高等特点,由J1/P1,64针单列双排插针或插孔,和J2/P2,40针单列双排插针或插孔组成,总共104根总线信号,PCI04因此得名;标准模块的机械尺寸是3.6X3.8 in,即96X90 lnln。当总线工作在16位的数据模式下,儿/P1和J2/P2引脚的信号都应有效,在8位数据模式下,只有J1/P1引脚信号有效,J2/P2上的信号无效。104个引脚的组成:20根地址线;7根锁存地址线;16根数据线;11个中断请求;32根控制线;14跟地和电源线;2个key;1个8 MHz的BCLK和1个14 MHz的OSC;总线的工作电压为5 V。PC/104总线的I/O读写时序如图2所示。

2.2 ARM$3C2410处理器简介

  S3C2410是韩国三星电子公司的一款基入ARM920T内核的16/32位RISC嵌入式处理器,主要面向手持设备及高性价比、低功耗的应用,最高工作频率为203 MI-Iz。ARM920T核由ARM920TDMI、存储管理单元(MMU)和高速缓存3部分组成。其中MMU可以管理虚拟内存,高速缓存由独立的16 kB地址和16 kB数据高速Cache组成,他支持嵌入式Linux,Windows ce等嵌入式操作系统。S3C2410将系统的存储空间分成8组(Bank),每组的大小为128 M,共1 G。Bank0~Bank5的开始地址固定,用于ROM/SREM。Bank7的开始地址是Bank6的结束地址,灵活可变,其主要用于ROM/SRAM/SDRAM。S3C2410采用nGCS[7:0]8个通用的片选信号来选则这些组。读写时序图如图3所示。

2.3 PC/104总线控制器的设计

  本设计采用。Xilinx公司XC95144XL的CPLD,共144个引脚,其中可编程的引脚数117个,满足PC/104总线控制器上输入输出控制信号数目的要求;器件正常工作电压3.3 V,I/O端口的负载电流可达24 mA,延迟时间tpD=5 ns,工作频率f=178 MHz,可与S3C2410的AHB总线的时钟频率HCLK匹配。VHDL是电子设计的主流硬件描述语言,具有很强的电路描述和建模的能力,从而大大简化了硬件设计的任务,提高了设计的效率和可靠性,并在语言的易读性和层次化结构化设计方面,表现了强大的生命力和应用潜力。Max+PlusⅡ界面友好,使用便捷。因此选择用VHDL语言编写有限状态机来实现PC/104总线控制器,通过Max+P1usⅡ开发工具进行逻辑波形验证。

  2.3.1 控制器内部状态图

  在PC/104总线的设计中,设计的重点是总线控制器的实现,能否完成PC/104总线驱动,关键在于控制器能否正常运行。PC/104总线控制器的工作流程:控制器等待选通信号有效,如果nGCS有效则锁存地址并保持ARM总线状态,然后进行读写操作判断,最后把数据和相应得控制信号加在PC/104总线上,完成操作后释放ARM总线。其状态转换图如图4所示。

2.3.2 I/o空间读写逻辑仿真波形

  本设计的有限状态机采用VHDL语言设计,主要完成PC/104总线控制器的状态图转换,从逻辑仿真波形上看:ARM读操作时,n0E信号有效(低电平),从总线上读人数据,同时使总线控制信号有效;写操作时,nWE信号有效(低电平),把数据直接写到总线上,同时也使总线控制信号有效,图5的仿真波形基本符合本设计的S3C24lO和PC/104总线读写时序要求。

  3嵌入式Linux下的驱动程序开发

  为了在Linux 2.6操作系统下实现本文所述的功能,必须为总线控制器提供一个驱动程序。在Linux中,所有的硬件设备都像常规文件一样看待,他们可以使用和操作文件相同的,标准的系统调用进行打开、关闭和读写。用户程序通过相应的系统调用来访问硬件设备,设备驱动程序的作用正是为这些系统调用提供接口。为了能对PC/104总线上的地址空间进行随机、连续访问,把PC/104总线设计成块设备。

设备驱动程序本质上说就是一组相关函数的集合。在驱动程序模块化编程中,首先需要调用入口函数im-modLde()完成设备驱动程序的初始化工作:利用函数

在系统中注册和PC/104相关的几个中断,关联中断服务例程,并设置中断等级;利用函数setexternal irq(int irq,int edge,int pulIup)设置中断的触发模式,和是否利用处理器的内部上拉;其中最重要的一个工作就是向内核注册设备,调用函数

注册成功后,该设备获得系统分配的主设备号、自定义的次设备号,并建立起与文件系统的关联;在本应用中只需要定义write()、read()两个文件操作,因此文件系统接口可定义为:

最后驱动程序卸载时调用出口函数Clearnup rood-ule(),通过函数

放相应的资源。

  4 结 语

  本文重点描述对PC/104控制器的设计,从满足系统的时序要求出发,采用CPLD器件和VHDL语言完成对PC/104总线上信号的驱动,同时在嵌入式Linux环境下编写驱动程序,提供了一套完整的基于ARM嵌入式系统上实现PC/104总线的方案,该方案将在实践应用中进一步验证和完善。本文成功地把工业控制计算机技术中的嵌入式PC/104总线结构在S3C2410处理器上实现,该系统具有体积小、功耗低,克服了传统PC机的缺点;采用CPLD通过VHDL语言实现PC/104总线控制器,缩短开发的成本和周期,提高了开发的灵活性。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

成都2022年10月19日 /美通社/ -- 近期,平安养老险积极筹备个人养老金的产品设计和系统开发工作,发展多样化的养老金融产品,推动商业养老保险、个人养老金、专属商业养老保险等产品供给。 搭养老政策东风 ...

关键字: 温度 BSP 东风 大众

广东佛山2022年10月19日 /美通社/ -- 空间是人居生活的基础单元,承载着生存与活动的最基本功能。而对于理想空间的解构意义却在物理性容器之外,体现出人们对于空间和生活深层关系的思考,同时也塑造着人与空间的新型连接...

关键字: 温度 BSP 智能化 进程

上海2022年10月19日 /美通社/ -- 10月17日晚间,安集科技披露业绩预告。今年前三季度,公司预计实现营业收入7.54亿元至8.33亿元,同比增长60.24%至77.03%;归母净利润预计为1.73亿...

关键字: 电子 安集科技 BSP EPS

北京2022年10月19日 /美通社/ -- 10月18日,北京市经济和信息化局发布2022年度第一批北京市市级企业技术中心创建名单的通知,诺诚健华正式获得"北京市企业技术中心"认定。 北京市企业技...

关键字: BSP ARMA COM 代码

北京2022年10月18日 /美通社/ -- 10月14日,国际数据公司(IDC)发布《2022Q2中国软件定义存储及超融合市场研究报告》,报告显示:2022年上半年浪潮超融合销售额同比增长59.4%,近5倍于...

关键字: IDC BSP 数字化 数据中心

上海2022年10月18日 /美通社/ -- 2022年9月5日,是首都银行集团成立60周年的纪念日。趁着首都银行集团成立60周年与首都银行(中国)在华深耕经营12年的“大日子”,围绕作为外资金融机构对在华战略的构想和业...

关键字: 数字化 BSP 供应链 控制

东京2022年10月18日  /美通社/ -- NIPPON EXPRESS HOLDINGS株式会社(NIPPON EXPRESS HOLDINGS, INC.)旗下集团公司上海通运国际物流有限公司(Nipp...

关键字: 温控 精密仪器 半导体制造 BSP

广州2022年10月18日 /美通社/ -- 10月15日,第 132 届中国进出口商品交易会("广交会")于"云端"开幕。本届广交会上高新技术企业云集,展出的智能产品超过140,...

关键字: 中国智造 BSP 手机 CAN

要问机器人公司哪家强,波士顿动力绝对是其中的佼佼者。近来年该公司在机器人研发方面获得的一些成果令人印象深刻,比如其开发的机器人会后空翻,自主爬楼梯等。这不,波士顿动力又发布了其机器人组团跳男团舞的新视频,表演的机器人包括...

关键字: 机器人 BSP 工业机器人 现代汽车

南京2022年10月17日 /美通社/ -- 日前《2022第三届中国高端家电品牌G50峰会》于浙江宁波落幕,来自两百余名行业大咖、专家学者共同探讨了在形势依然严峻的当下,如何以科技创新、高端化转型等手段,帮助...

关键字: LINK AI BSP 智能家电

嵌入式软件

15715 篇文章

关注

发布文章

编辑精选

技术子站

关闭