基于ZYNQ的便携式显控终端设计与实现

基于Z Y N Q 的便携式显控终端设计与实现
乔雪原
(中国电子科技集团公司第十研究所,四川成都610036
)摘要:工业测控装备便携㊁小型化的需求日益迫切,设计与实现了一种基于Z Y N Q 处理器的便携式显控终端㊂该终
端首次采用U b u n t u 最小核心创建文件系统,通过以太网在线更新维护的方式,解决了系统维护难的问题;同时,提出基于L i n u x 的用户空间I /O (U I O )子系统的驱动实现方法,解决了内核态驱动影响系统内核稳定性的问题㊂触摸虚拟操作界面的引入,实现了设备控制的无物理按键化,不仅节约了成本,降低了设备故障率,还解决了设备通用性问题㊂最后,通过实装上机验收测试,验证了该方法是合理可行的,可推广应用于其他工程产品上㊂关键词:Z Y N Q ;L i n u x ;用户空间I /O ;
触摸屏;文件系统中图分类号:T N 957.7      文献标识码:B        文章编号:C N 32-1413(2021)02-0109-06
D O I :10.16426/j .c n k i .j
c d z d k .2021.02.023D e s i g n a n d R e a l i z a t i o n o f D i s p l a y a n d C o n t r o l T e r m i n a l B a s e d o n Z Y N Q
Q I A O X u e -y
u a n (T h e 10t h R e s e a r c h I n s t i t u t e o f C E T C ,C h e n g
d u 610036,C h i n a )A b s t r a c t :A s t h
e d e m a n d
f o r p o r t a b i l i t y a
n d m i n i a t u r i z a t i o n o f i n d u s t r i a l m e a s u r e m e n t a n d c o n t r o l e q u i p m e n t b e c o m e s m o r e a n d m o r e i m p e n d e n c e ,a p o r t a b l e d i s p l a y a
n d c o n t r o l t e r m i n a l b a s e d o n t h e Z Y N Q p r o c e s s o r i s d e s i g n e d a n d i m p l e m e n t e d .T h e t e r m i n a l i n i t i a l l y u
s e s U b u n t u  s s m a l l e s t c o r e t o c r e a t e a f i l e s y s t e m ,a n d s i m p l i f i e s s y s t e m m a i n t e n a n c e b y m e a n s o f o n -l i n e u p
d a t
e a n d m a -i n t e n a n c e v i a E t h e r n e t .A t t h e s a m e t i m e ,a d r i v e r i m p
l e m e n t a t i o n m e t h o d b a s e d o n t h e L i n u x u s e r s p a c e i n p u t /o u t p u t (U I O )s u b s y s t e m i s p r o p
o s e d t o s o l v e t h e p r o b l e m t h a t k e r n e l m o d e d r i v e r a f -f e c t s t h e s t a b i l i t y o f t h e s y s t e m k e r n e l .T h e i n t r o d u c t i o n o f t h e t o u c h v i r t u a l o p
e r a t i o n i n t e r
f a c e r e -a l i z e s t h e n o n -p h y s i c a l b u t t o n c o n t r o l o f t h e e q u i p m e n t ,w h i c h n o t o n l y s
a v e s t h e c o s t ,r e d u c e s t h e e q u i p m e n t f a i l u r e r a t e ,
b u t a l s o s o l v e s t h e p r o b l e m o f e q u i p m e n t v e r s a t i l i t y .F i n a l l y ,t h r o u g
h t h e a c c e p t a n c e t e s t ,i t i s v e r i f i e d t h a t t h e m e t h o d i s r e a s o n a b l e a n d f e a s i b l e ,a n d c a n b e p o p
u l a r i z e d a n d a p p l i e d t o o t h e r e n g i n e e r i n g p r o d u c t s .K e y w
o r d s :Z Y N Q ;L i n u x ;u s e r s p a c e i n p u t /o u t p u t ;t o u c h s c r e e n ;f i l e s y s t e m 收稿日期:20200927
0 引 言
显控终端是各种模拟测试㊁监视控制设备的重
要组成部分㊂针对实验室和外场不同环境使用的灵活性和实时性需求,显控终端的便携小型化具有明确的实用价值㊂
当前出现了大量基于Z Y N Q 处理器的应用开
发研究㊂徐磊详细叙述了基于Z Y N Q 处理器的硬
件设计和软件设计,采用了L i n a r o 提供的U b u n t u
桌面文件系统[1]
㊂王树青详细阐述了基于P e t a l -
i n u x 开发工具的系统移植和部署方法[2]
㊂褚亭强详细阐述了基于Z Y N Q 处理器的高清多媒体接口
(H D M I )显示器实现,以及L i n u x 操作系统的交叉
编译和系统设备树的方法[
3]
㊂刘桦杰详细阐述了基于Z Y N Q 处理器的U S B 接口设计和Q T 库的移
植[4]
㊂这些研究各有侧重,但均没有解决系统可维护性和通用性问题,比如文件系统移植后无法实现动态裁剪和配置,软件开发部署需要经过复杂的交
2021年4月舰船电子对抗
A p
r .2021第44卷第2期
S H I P B O A R D E L E C T R O N I C C O U N T E R M E A S U R E
V o l .44N o .2
叉编译等;同时大部分研究基于开发板完成,未考虑实际工程应用场景的需求㊂
本文提出的显控终端实现方案采用基于U b u n-t u核心的文件系统,解决了系统维护问题,同时采用触摸屏引入虚拟操作界面,实现了设备控制的无物理按键化,降低了设备故障率,解决了设备通用性问题㊂
1系统组成
从功能实现上,Z Y N Q系列芯片可分为P r o-c e s s i n g S y s t e m(P S)部分和P r o g r a mm i n g L o g i c (P L)部分㊂P S是基于A R M处理器的处理系统,除了处理单元所包含的定时器㊁中断控制器和D MA控制器外,还包括双倍速率(D D R)存储器接口㊁M I O接口以及与P L通信的高速A X I总线接口等;P L则包含有丰富的逻辑资源,如块随机存取存储器(B R AM)㊁数字信号处理(D S P)模块㊁外围组件快速互联(P C I E)模块等㊂A X I4高速总线可以使P S能够通过A X I4G P接口控制P L端的I P核模块,P L也能够通过A X I高性能(H P)接口实现和D D R的直接数据传输,Z Y N Q内部的高速总线设计,大大简化了P S和P L之间的互联[5]㊂
显控终端的硬件架构采用核心处理板加功能子卡的方式实现㊂核心功能独立形成核心处理板,特定的应用需求通过功能子卡的形式进行扩展,子卡与核心板的接口形式采用X M C规范㊂
核心处理板的设计原理框图如图1所示,设计以Z Y N Q处理器为核心,通过P S和P L扩展外部接口㊂P S端的外设主要包括系统引导存储器四线串行外设接口(Q S P I)F L A S H㊁运行操作系统的D D R存储器㊁文件系统和用户空间存储器嵌入式多媒体卡(e MM C)㊁调试T F C A R D插槽㊁热插拔数据交互U S B接口㊁R S232调试串口㊁负责断电时间维持的R T C电路㊁千兆以太网接口等㊂P L端的外设主要包括用于时间同步的G P S/北斗授时模块㊁数据缓存和处理用的D D R存储器㊁用于状态指示的L E D指示灯㊁用于外部通信和设备控制的4路R S422接口㊁用于连接触控显示器的H D M I接口以及用于扩展功能的X M C连接器接口等㊂
2系统硬件设计
2.1电源管理
电源管理是决定硬件平台是否稳定的重要
图1显控终端硬件设计原理框图
素,电源设计必须严格按照处理器手册上要求的上电时序和下电时序设计,否则可能引起过电压或过电流,导致芯片无法正常工作[6]㊂
显控终端的电源管理由滤波和短路保护电路㊁电压二次转换电路和电源监控电路三部分组成㊂每个电源输入端设计了三端滤波器进行电源滤波,并设计经过保险丝以防止电源输入端出现短路㊂保险丝的选择根据设计规范选择系统稳定工作电流值的3~4倍㊂电压二次电源主要将输入的+12V电压转换为+1.0V㊁+1.5V㊁+1.8V㊁+2.5V㊁+3.3V电压,D D R存储器所需的+0.75V则由二次电压+1.5V转换得到㊂电源监控电路监测输入电压和电流值,监控状态可以通过网络接口进行查询,同时电压或电流值超过告警门限,会通过状态L E D灯进行闪烁告警㊂
触控显示器的功耗大约6W,方案为显示器设计了独立的电源开关,在不使用时可以断开显示器的供电,达到降低功耗的目的㊂
2.2通信接口
Z Y N Q处理器集成了以太网媒体介入控制层(MA C)控制器,显控终端使用M a r v e l l公司的88E1512以太网P H Y实现网络数据帧的发送与接收,外部互联采用隔离变压器H X5120N L进行信号转换就构成了10M/100M/1000M自适应以太网㊂
R S232㊁R S422接口用于系统调试和低速设备的通信控制㊂R S232接口采用L V T T L电平,无法直接连接计算机的串行通讯端口(C OM),需要经过转换器进行电平转换㊂R S422接口数据速率最高4M b p s,具备同步和异步2种工作模式,通过自定义的P L端逻辑实现,模式选择可通过P S端软件进
鲜奶搅拌机011舰船电子对抗第44卷
行动态设置㊂2.3 人机交互接口
终端的人机交互包括触摸显示器㊁U S B 接口和
T F C A R D 接口㊂工作时显示界面会被应用程序界面覆盖,通过触摸显示屏可以完成绝大部分工作㊂U S B 接口可以用于问题排查时外接键盘鼠标,与桌面系统或者控制台进行交互,同时通过U S B 存储器实现同系统的文件交换㊂T F C A R D 接口主要用于
系统S D C A R D 启动模式的调试㊂
Z Y N Q 芯片中没有集成H D M I 解码器,
方案使用A D V 7511芯片进行H D M I 视频数据的解码㊂A D V 7511是一款最高视频数据传输速率为
225MH z 的H D M I 发送器,
用于输出数字视频信号至具有H D M I 接口的显示器,其数字视频接口标准为H D M I 1.4并同时兼容D V I 1.0发送器,
支持所有高清电视格式(包括12位深1080p
)[7]
㊂A D V 7511与P S 端的接口互联逻辑采用P L 端
的I P 实现,原理框图如图2所示㊂其中I I C 总线配置模块负责对A D V 7511芯片的寄存器进行读写控制,以控制视频接收模块对传输过来的视频数据进
行解码[3]
,V D MA 模块负责将图像帧数据传输到视
频接口,同步动态随机存取内存(S D MA )和索尼/飞利普数字音频接口(S P D I F )负责音频接口的数据处理
图2 基于A D V 7511的P L 端逻辑原理框图
3 系统软件设计
3.1 系统引导过程及原理
如图3所示,系统启动过程分为以下4个阶段:
加电/复位引导只读存储器(R OM )阶段;第1级引导装载程序第1级B o o t L o a d e r (F S B L )阶段;第2级引导装载程序B o o t L o a d e r 阶段和内核启动挂载文件系统阶段㊂
第一阶段为上电或系统复位重启,主处理器执行硬件编码的引导R OM 代码㊂R OM
代码支持通
图3 Z Y N Q L i n u x 引导过程
过联合测试行动组(J T A G )㊁安全数字卡(S D
C a r d )㊁N o r F l a s h ㊁N a n d F l a s h ㊁Q S P I F L A S H 进行
引导㊂芯片的引导模式配置引脚决定了引导模式,引导模式定义了F S B L 要从哪个接口装载㊂一旦引导模式被确定,引导R OM 代码会读入导引头和给定的配置参数,验证通过后把F S B L 从指定的接口装载到片上存储器(O C M )中,之后C P U 的控制交给F S B L ㊂
第二阶段为第一级引导装载程序F S B L 执行阶段㊂F S B L 负责加载B o o t L o a d e r 并将控制交给
B o o t L o a d e r ㊂第三阶段为B o o t L o a d e r 加载内核和文件操作
系统㊂B o o t L o a d e r 根据b o o t c m d 环境变量加载P L 硬件比特流文件㊁操作系统内核文件和系统设备描述文件,完成P L 硬件逻辑的配置,并最终将控制交给操作系统内核㊂这个阶段涉及以下2个步骤:
(1)从e MM C 存储器读取P L 硬件比特流文
件, 通过f p g a l o a d b 命令完成P L 端逻辑的配置;(2)从e MM C 存储器读取操作系统内核文件和系统设备树文件,通过b o o t m 命令将控制交给操
作系统内核㊂
第四阶段为操作系统内核启动并加载文件系统㊂操作系统内核根据系统设备树文件的设备描述
信息完成设备硬件资源的初始化,最后挂载文件系统完成整个系统的启动㊂3.2 B o o t L o a d e r 和操作系统移植
B o o t L o a d e r 和操作系统移植采用P e t a L i n u x 开发环境实现,开发环境包含开发测试和部署基于
Z Y N Q 全可编程片上系统(S o C )
所需的工具,可以满足大多数开发人员的需求㊂开发具体过程如下:(1)采用V i v a d o 开发工具,完成P L 端硬件资源的配置,并导出设计的硬件描述文件;
(2)通过p e t a l i n u x -c r e a t e 命令行工具创建基于Z Y N Q 模板的工程;
1
11第2期乔雪原:基于Z Y N Q 的便携式显控终端设计与实现
(3)通过p e t a l i n u x-c o n f i g命令行工具导入硬件描述文件,并完成B o o t L o a d e r加载方案的配置和L i n u x操作系统内核的功能裁剪;
(4)通过p e t a l i n u x-b u i l d/p a c k a g e命令行工具完成系统引导文件(B O O T.B I N)㊁P L端硬件比特流文件(s y s t e m.b i t)㊁操作系统内核文件(i m a g e. u b)和系统设备树文件(s y s t e m.d t b)的编译和生成㊂3.3文件系统移植
文件系统移植过程分为文件系统配置和文件系统镜像制作2个部分㊂文件系统配置完成系统软件的安装和系统参数设置;文件系统镜像制作将配置完成的文件系统形成为特定文件系统格式的文件㊂3.3.1文件系统配置
万向车
文件系统的配置主要依赖开发计算机上的q e-m u-u s e r-s t a t i c文件㊁c h r o o t命令和U b u n t u提供的基于A R M架构的核心文件系统㊂c h r o o t命令可以切换系统的根目录位置,将核心文件系统作为根文件系统,然后通过A p t工具使用U b u n t u的软件仓库进行系统功能软件的卸载与安装㊂A p t(全称A d v a n c e d P a c k a g e T o o l)是U b u n t u的一套核心工具,可以基本解决依赖问题并检索需要的软件包㊂文件系统配置的具体过程如下:
收获时间到(1)解压核心文件系统,目录名约定为R O-O T F S;不锈钢旗杆制作
(2)拷贝q e m u-a r m-s t a t i c文件到R O O T F S/ u s r/b i n目录;
(3)用m o u n t命令以p r o c文件系统的方式挂载开发机/p r o c目录到R O O T F S/p r o c;
(4)拷贝开发计算机的/e t c/r e s o l v.c o n f文件到R O O T F S/e t c/;
(5)使用c h r o o t命令将R O O T F S目录作为当前终端的根目录;
(6)使用A p t系列命令根据需求完成软件维护和系统功能配置㊂安装的软件主要包括Q T运行时环境㊁编译器工具链和X f a c e桌面系统等㊂功能配置主要包括系统用户㊁系统I P地址㊁开机服务启动配制等㊂
3.3.2文件系统镜像制作
文件系统镜像制作主要使用L i n u x系统下的
d d和m k f s.
e x t4命令㊂具体工程如下:
(1)使用d d命令通过/d e v/z e r o文件生成一个2G B大小的普通文件,文件名约定为R O O T F S.E X
T4;
(2)使用m k f s.e x t4命令将R O O T F S.E X T4文件格式化为e x t4格式的文件;
(3)使用m o u n t命令挂载R O O T F S.E X T4文件到/m n t目录,并将R O O T F S目录下的所有文件拷贝到/m n t目录;
(4)卸载/m n t即完成系统镜像文件R O-O T F S.E X T4的制作㊂
3.4用户接口驱动实现
3.4.1用户空间I/O子系统
显控终端外部的接口均为标准输入输出设备,直接采用L i n u x操作系统自带的驱动㊂用户自定义设备接口主要是P S与P L进行业务数据通信接口,主要包括先进先出(F I F O)㊁双端口随机存储器(R AM)㊁直接存储器访问(D MA)㊁通用异步收发传输器(U A R T)㊁通用输入输出端口(G P I O)等㊂这些接口采用基于A X I总线的I P核设计与实现㊂A X I 总线有3种总线模式可供用户选择,分别是A X I4, A X I-l i t e和A X I-s t r e a m㊂
对于有些类型的设备,真正需要的只是通过某些途径来访问设备的内存空间和处理中断㊂当设备并不
使用内核提供的其他资源的时候,设备的控制逻辑并不需要在内核中实现㊂为了解决这一问题, L i n u x提供了用户空间I/O子系统㊂每个采用U I O 子系统实现的驱动设备,在/d e v目录下都有对应的设备文件,设备文件名依据顺序依次为u i o0,u i o1, u i o2等[8]㊂U I O设备通过设备文件和s y s f s属性文件进行访问㊂/d e v/u i o X文件用来访问设备的地址,用mm a p()后可以访问设备的寄存器和R AM㊂
中断处理通过读取/d e v/u i o X文件来实现㊂对/d e v/u i o X文件进行的读取中断发生后立即返回,返回值表示触发中断的个数,通过判读相邻两次的返回数值可以判断是否发生了中断丢失㊂3.4.2中断处理方案
P L可以触发最多20个异步中断给P S,其中最多16个中断信号会映射到中断控制器作为外设中断㊂显控终端的U I O设备数量不同,工程的需求也不同,16个中断信号无法满足为每个U I O设备分配独立的中断信号资源㊂为解决这个问题,设计了一种基于G P I O I P的中断处理机制,可以扩展系统有限的中断资源,设计原理框图如图4所示㊂方案中的G P I O_I N T为使能了中断功能的G P I O I P,该I P包含2个32位的G P I O寄存器,每个G P I O寄存器可以独立配置为输入㊁输出或输入输出㊂方案将
211舰船电子对抗第44卷
G P I O 0作为中断触发寄存器,G P I O 1作为设备状态
寄存器,对于P S 端均为只读寄存器㊂状态管理模块负责集中处理U I O 设备的状态参数,实时将相应外设的状态反映到G P I O 1对应的比特位,同时翻转G P I O 0的最低比特位,G P I O 0最低位的翻转会触发G P I O _I N T 产生中断㊂P S 端响应中断后通过读取G P I O 1的值可以判断各U I O 设备的状态,中断响应程序根据状态完成相应的中断响应㊂若32比特无法满足状态表示需求,可以通过多个G P I O 设备进行扩展
图4 U I O 设备中断处理机制示意图
3.4.3 系统设备树
设备树,也称为扁平设备树,是一种描述硬件配
置的树形数据结构[9]
㊂硬件配置包括有关C P U ㊁
内存㊁总线以及外设等相关的信息㊂操作系统在启动时解析设备树,根据解析出的设备信息配置内核并加载对应的设备驱动㊂
设备树描述文件由节点和属性组成,每个节点可包含字节点和属性㊂P e t a L i n u x 工具默认生成的设备树描述文件不支持在L i n u x 系统下生成U I O
设备文件,需要进行修改㊂需要修改的内容主要有以下2个部分:
(1)B o o t L o a d e r 的b o o t a r g s 环境变量增加u i o _p d r v _g e n i r q
热敏打印机芯
.o f _i d =g e n e r i c -u i o ;(2)各U I O 设备节点的c o m p
a t i
b l e 属性改为g
e n e r i c -u i o ㊂4 系统部署方案
系统部署的资源包括引导文件㊁P L 端硬件比
特流文件㊁操作系统内核文件㊁系统设备树文件和文件系统镜像文件五部分㊂其中引导文件部署在Q S -
P I F L A S H 中,P L 硬件比特流文件㊁
系统设备数文件㊁操作系统内核以及文件系统部署在e MM C 存储器中㊂
方案引导方式采用Q S P I F L A S H ,引导文件B O O T.B I N 直接烧写到Q S P I F L A S H 的0地址开始空间㊂其它文件的部署需要对e MM C 存储器进
行分区和格式化㊂
e MM C 存储器的分区和格式化方案见表1,共分为3个分区,分别为配置文件分区㊁文件系统分区和用户空间分区㊂由于B o o t L o a d e r 的mm c 命令只支持F A T 32格式的文件系统,因此配置文件分区格式化为F A T 32格式;文件系统分区和用户空间分区格式化为E X T 4格式文件系统㊂e MM C 存储器标称容量32G B ,实际使用不足32G B ,
因此用户空间的可用容量小于23.5G B ㊂
表1 e MM C 存储器分区方案
分区用途分区大小分区格式配置文件512M B
F A T 32文件系统8
G B
E X T 4用户空间
~23G B
E X T 4
P L 端硬件比特流文件㊁
操作系统内核文件㊁系统设备树文件以文件的形式部署在配置文件分区,文件系统镜像文件通过d d 命令写入文件系统分区㊂由于文件系统镜像小于系统分区,通过r e s i z e 2f s 命令进行扩容可以使用全部分配的分区空间㊂操作系统内核文件对于应用基本不需要改变,
配置文件分区只需要部署1份内核文件㊂P L 端硬件比特流文件㊁系统设备树文件对于不同的功能和需求文件是不同的,但2个文件大小总和均约为
5M B ㊂因此配置文件分区可以容纳多个硬件比特流文件和对应的系统设备树文件,通过修改B o o t -L o a d e r 环境变量即可实现不同的系统功能㊂
5 测试结果与分析
完成系统开发后,选取某信号侦察项目进行测
试,验证系统是否满足设计要求㊂该项目设计的P L 端接口资源见表2㊂
5.1 启动测试
异位发酵床
加电后系统被成功引导,登陆基于X f c e 的
L i n u x 桌面系统,
并打印出系统的设备文件,结果如图5所示㊂从打印出的设备文件可以看出系统成功创建了5个基于用户空间子系统的u i o 0~u i o 4设
3
11第2期乔雪原:基于Z Y N Q 的便携式显控终端设计与实现

本文发布于:2024-09-22 16:41:53,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/128833.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:系统   设备   文件   中断   配置   设计   内核   实现
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议