![(电路与系统专业论文)基于CK510的32位MCU功能设计与验证[电路与系统专业优秀论文].pdf_第1页](http://file.renrendoc.com/FileRoot1/2019-12/13/a47da33f-23de-46a6-b4c7-9448a8b8841a/a47da33f-23de-46a6-b4c7-9448a8b8841a1.gif)
![(电路与系统专业论文)基于CK510的32位MCU功能设计与验证[电路与系统专业优秀论文].pdf_第2页](http://file.renrendoc.com/FileRoot1/2019-12/13/a47da33f-23de-46a6-b4c7-9448a8b8841a/a47da33f-23de-46a6-b4c7-9448a8b8841a2.gif)
![(电路与系统专业论文)基于CK510的32位MCU功能设计与验证[电路与系统专业优秀论文].pdf_第3页](http://file.renrendoc.com/FileRoot1/2019-12/13/a47da33f-23de-46a6-b4c7-9448a8b8841a/a47da33f-23de-46a6-b4c7-9448a8b8841a3.gif)
![(电路与系统专业论文)基于CK510的32位MCU功能设计与验证[电路与系统专业优秀论文].pdf_第4页](http://file.renrendoc.com/FileRoot1/2019-12/13/a47da33f-23de-46a6-b4c7-9448a8b8841a/a47da33f-23de-46a6-b4c7-9448a8b8841a4.gif)
![(电路与系统专业论文)基于CK510的32位MCU功能设计与验证[电路与系统专业优秀论文].pdf_第5页](http://file.renrendoc.com/FileRoot1/2019-12/13/a47da33f-23de-46a6-b4c7-9448a8b8841a/a47da33f-23de-46a6-b4c7-9448a8b8841a5.gif)
已阅读5页,还剩70页未读, 继续免费阅读
(电路与系统专业论文)基于CK510的32位MCU功能设计与验证[电路与系统专业优秀论文].pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 采用 3 2位 m c u来设计嵌入式系统已成为嵌入式系统设计的发展趋势,因此 设计自卞知识产权的 3 2位 mc u具有重大意义。本文阐述了基于 3 2位 c p u核 c k 5 1 0 和a mb a片内总线的m c u设计过程,详细介绍了m c l i 的整休框架, 并对 功能模块的总线接口做了详细的分析和阐述。同时,对 m c u包括存储器肯理控制 器、以太网控制器、l c d控制器. i i c总线控制器、u a r 丁控制器等各个功能模块 的结构框图设计、寄存器结构设计、数据流设计以及设计难点等做了详细说明。 针对s o c系统功能验证的难点,本文结合系统中包含a mb a总线的特点,采 取了s y n o p s y s 公司 的v m t 技术, 用a h b 结合a h b上i p 模块、 a p b 结合a p b 上 i p的验证策略,达到了在软件平台上对整个 mc u进行有效验证的目的。同时,为 了增强设计信心 、 ,在 mc u的验证过程中搭建了基于 f p g a的硬件验证平台,编写 了每个功能模块的相应驱动程序,完成了mc u的硬件验证步骤。 最后本文对 mc u的后端设计要解决的问题做了展望。 关键词 3 2位 mc u结构设训 一功能验证a mb a总线 ab s t r a c t t h e d e s i g n o f e m b e d d e d s y s t e m b a s e d o n 3 2 - b it mc u i s t h e t r e n d o f e m b e d d e d s y s t e m d e v e l o p m e n t . u n d o u b t e d l y , t h e d e s i g n o f 3 2 - b i t mc u w i t h i n d e p e n d e n t i n t e l l i g e n t p r o p e r t y w i l l b e o f g r e a t s i g n i f i c a n c e . t h e p a p e r p r e s e n t s t h e d e s i g n p r o c e s s o f 3 2 - b i t m c u b a s e d o n c k 5 1 0 c p u c o r e a n d a m b a o n - c h i p b u s w i t h d e t a i l s . t h e b u s in t e r f a c e o f t h e i p m o d u l e i s t h e k e y p a r t o f t h e w h o le i p a r c h it e c t u r e d e s i g n , w h i c h i s d i s c u s s e d d e e p l y i n th i s p a p e r . me a n w h i l e , t h e p a p e r a l s o g i v e s t h e d e t a i l d e s c r i p t i o n s a b o u t t h e m a i n i p s s u c h a s me m o r y ma n a g e m e n t c o n t r o l l e r . e t h e r n e t a c c e s s c o n t r o l l e r , l c d c o n t r o l l e r , i i c b u s c o n t r o l l e r , u a r t c o n t r o l l e r i n t h r e e a s p e c t i n c l u d i n g a r c h i t e c t u r e d e s i g n , r e g i s t e r h i e r a r c h y d e s i g n , d a t a s t r e a m d e s i g n . f u n c t i o n a l v e r i f i c a t i o n w i t h h i g h c o v e r a g e t o t h e s o c s y s t e m i s a b i g c h a l le n g e c o m b i n e d t o t h e a mb a b u s , s y n o p s y s v m t ( v i r t u a l mo d e l t e c h n o l o g y ) i s e m p l o y e d a s t h e v e r i f i c a t i o n t o o l . t h e p a p e r a d o p t s t h e a h b p l u s a h b b a s e d i p m o d u l e a n d a p b p l u s a p b b a s e d i p m o d u le v e r i f i c a t i o n s t r a t e g y t o a c h i e v e t h e g o a l e f fi c i e n t l y . i n o r d e r t o e n h a n c e s u c c e s s c o n f i d e n c e , a h a r d w a r e p l a t f o r m b a s e d o n f p g a i s a l s o e s t a b l i s h e d t o d o t h e f a c t u a l f u n c t i o n a l v a l i d a t i o n . s o ft w a r e d r i v e r c o r r e s p o n d i n g t o i n d i v i d u a l i p i s a l s o m a d e t o c o m p l e t e t h e v e r i f i c a t i o n a p r o s p e c t o f t h e p r o b l e m s w h i c h mc u i s a l s o g i v e n a t t h e l a s t p a r t o f t h i s w il l b e m e t d u r i n g t h e b a c k - e n d d e s i g n o f t h e k e y 3 2 - b i t wor d: mc u a r c h i t e c t u r e d e s i g n f u n c t i o n a l v e r i f i c a t i o n a mb a b u s 基于c k 5 1 0 的3 2 位m c u 功能设计与验证 第一章 3 2 位 mc u是嵌入式处理器发展趋势 根据 ws t s( 隧界半导体贸易统计) 2 0 0 3 年 1 2 月进行的 “ 嵌入式设汁调查” 中,5 2 %的回复者希望在未来两年内考虑转向 3 2位架构。ws t s的市场报告显 / i 复位 a h b: 功能模块一 复位 c p u核的复位策略,以保证各个 模块复位的同步,并且也能更方便在物理设计时复位信号树的产生。复位信号产生 模块如图2 -2 所7 r p c lk d o ma in h c lk d o ma in c p u r i k d wl a i r ( 图2 -2 复位信号模块框图) 2 . 3 . 2 全局时钟产生模块设计 c k 5 1 0 m c u采用 p l l 产生应用于c p u核、a h b总线上模块、a p b总线匕 模 块的时钟。每一 个模块均采用门控时钟 ( g a t e d - c l o c k )技术,门控时钟由 p o w e r m a n a g e m e n t 模块控制。采用该方式的思路是当某些模块不需要工作时, p o w e r m a n a g e m e n t 截断该模块的时钟信号,以 达到降 低功耗的目 的。时钟产生模块框图 如图2 一3 所不。 当芯片应用者要关闭某个功能模块时,发送相应的指令,指令经过译码后控 制p o w e r m a n a g e m e n t 模块来使能相应的 信号来达到 截断时 钟信号线的目 的 在每 个门 控时钟前均加了一个锁存器 ( la t c h ),该 锁存器的目的是消除时钟线上的毛 刺。 基于c k 5 1 0 的3 2 位m c u 功能设计与验证 门i n c l k d i s a b l e c r t目 旧d e ( s t o p . d o z e . e a i t ) p o w e r m a n a g e m e n t c o n f i g u r a t i o n a n d卜 一 一 1 p 2 c l k d i s a b l e 州 s ee t i t ) 门 n o i k 一 l a tc h - - - e n a f t e r l a t c h 勺p 1 _ e l k ) 口 2 c l k e n a f t e r l a t c h l- 二 卜 一犷 , 、 i p 2 _ c l k 一i p 2 一 万 兰 比 少一 性 一 一 ( 图2 一3 时钟产生模块) 当芯片应用者要关闭某个功能模块时,发送相应的指令,指令经过译码后控 制p o w e r m a n a g e m e n t 模块来使能 相应的 信号来达到 截断时 钟信号线的目 的。 在每 个门控时钟前均加了一个锁存器 ( l a t c h ),该锁存器的目的是消除时钟线上 的毛 刺 2 . 3 . 3 少 余各 i p模块 其余的各个 i p 模块将在四一九章中做详细的阐述。在设计各个 i p 模块时,t . 要要考虑模块与总线的接口,内部各个寄存器功能的设计,以及各个 i p模块的工 作时序。其中,寄存器功能的设计 一 是 i p功能设计时的最卞要部分,c p u均是通过 对每个模块的寄存器的读写来决定模块的工作模式和获取模块当前的工作状态。以 下各章也基本 上 在这二个方面来详细的.p1述。 基于c k 5 1 0 的3 2 位m c u 功能设计与验证 第三章ip模块总线接口设计 3 . i ip模块原型结构图设计 在本设计中,由于整个 mc u基于 c k 5 l o c p u和基于 a mb a总线,因此在设 计 m c u的时,着重要考虑的是各个 ip模块与 a mb a总线接口的设计。在 m c u 中,c k 5 10c p u核是在 a mb a总线上必须的 m a s t e r模块,它可以 对仟意一个 在 a mb a上的功能模块进行工作状态的配置和数据的存取。因此,所有的在 a mb a仁 的功能模块在结构设计上都要遵循如图3 一1 所示的原始结构135 。 在图 3 一 所不的原型结构中,每个 ip包含了与a mb a总线的接口,通过该 接f , c p u百 j 以 方便得访110i p 中的r e g i s t e r s 和o a t a f i f o s ,从i p 中读 取数据或者 对ip写数 据。 r egi st er s 完成了对 整个ip的 功能实 现, r egis t er s 模块在 物理实 现上 可以 引出 各种控制线, 设定了 p h ys i ca l c ont r ol模块和 o at a f if o s 的工作状态 o at afi f o s 用于数据的存储,因为其数据源时钟的不同步性,需要设 计 f if o来达 到易卜c p u存取数据的目 的。 p h ysical c ont rol 模块是物理信号时序的实现模块, 因为每个ip对外通讯的协议各不相同,因此p h ysica l c ont r ol模块的作用是解析从 mc u外部上获得的信号产生数据,或者将 o at afif o s中的数据调制成相应的时 序,用于与mc u外部的物理模块通讯。 匕 u 。 e g : 5 : 。 r s 十 _ 川 一 一 :忿 豁 l 了 l 二 价 少 一 只 极 _ _ _ n.er闪es改ce 疚 一花 、 扭曰曰功nnao曰曰卜自污 ( 图3 一1各功能模块的原始结构框图) 基于c k 5 1 0 的3 2 位m c u 功能设计与验证 在m c u的v e r i l o g 代码编写过程中, 我们发觉该结构具有可配置性强,代 码 可重用率高,结构划分清晰等特点,证明了该原始结构的有效性。 3 . 2 两种 i p 模块总线接口设计 在 i p模块的设计中针对每个特定的功能模块,我们可以设计不同的肖存器 页,通过配置这些寄存器页,达到配置不同 i p模块的目的。因此只要对侮个功能 模块进行功能上的分析,设计完备的寄存器页,便能确定 i p模块寄存器页的结 构,这在功能分析时是比较容易确定的。 在设计 f i f o时,首先要针对具体的 i p确定 f i f o 的深度,同时 一 也要确定 f i f o满、半 满、空、半空时产生的信号时序,这在具休 it , 设计中也较容易实现 在设 计 p h y s i c a l c o n t r o l 模块时,主 要的 工作在于分析模块与外设 之间的 信号 时序,时序是固定的,用有限状态机可以方便得实现。 而在设计总线接口时,则要更多得考虑 i p模块之间的互相影响,这对设计整 个m c u ,让m c u处于一个较高的运作性能是至关重要的 is l 在传统的板级系统中,一块电路板上 往往只有一个 c p u , c p u决定了 整个电 路板的 l 作状态,其余在电路板上的一些元器件均是作为被 c p u控制的对象, c p u“ 卞动”得访问外部元器件。因此,c p u总是处于繁忙工作状态。以一个 l c d显示的板级系统为例,c p u需要不断得将存储器中的数据发送给 l c d d r i v e r 用p 显小。因此 c p u只能处 于 不断得读取数据中而不能执行别的一些程序。这往 往使整个 mc u处于 一个很低的运行性能状态。 在 mc u的设计中,由于内部也存在这 l c d c和 ma c这样的需要数据量比较 大的模块,因此,如果我们采用 l c d c和m a c仅作为a mb a上的s l a v e 模块, 那么当 我们要显t一帧数据时,c p u必须执行一 段汇编程序,该汇编程序的功能 是:c p u一首先中清总线控制权,然后通过总线把外部存储器中的数据取到 c p u 中,接着 c p u e 1 7 . 次中清总线控制权,把相同的数据发送到 l c d模块内部的显小存 储器中,接着 l c d内部的数据读取引擎把显t存储中的值再发送到 p h y s ic a l c o n t r o l 模块,调制成相应的波形发送给 mc u外部的 l c d d r i v e : 用于显/ j 。由此 可见,如果数据量很小,则不占用 c p u的很多资源,似如果我们要显% i : 图片的变 墓于c k 5 1 0 的3 2 位m c u 功能设计与 验证 化频率很高,则 c p u必须始终要在执行 上 述过程,c p u的性能大大降低。对于 ma c ,也具有相同的情况 基于以上的考虑,在本 mc u的设计中,我们在数据传输量比较大的模块的总 线接口部分设计了d ma ,让模块白己具有从存储器读取和存放数据的功能。 在 l c d c模块和 m a c模块的总线接口 部分设计了 d m a ,这也会给 c p u带 来 一 定的影响,原因是,当 m a c具有 d ma功能后,即 ma c也必须具有发存储 器进行读取和存放数据的能力,即 m a c能发起总线传输,因此在 a mb a总线 上,m a c 也 同时是一个 ma s t e r, l c d c 也同时是一个 ma s t e r。多个 m a s 丁 e r在 a mb a的总线 匕 当同时要求控制总线时,就必然会引起竟争总线控 制权的情况发牛。当我们把 c p u要执行的程序存放在外部存储器上时,c p u在执 行程序时都要中请总线,然后通过总线把程序数据读到 c p u内部。当a mb a 卜 只 有一 个 ma s t e r时,c p u每次中 请总线都会立即得到响应,而当总线 仁 有多个 ma s t e r时,如果别的 ma s t e r正在控制总线进行数据操作,则 c p u至少要等 到别的 ma s t e r的一个执行周期结束才能获得总线控制,测试 c p u并没有执行程 序,因而浪费了 c p u的资源,降低了 mc u的执行速度。在本设计中,引入了 d ma后势必会引起上述的情况,但 c k 5 1 0 c p u核在设计过程中己经引入了最大 可为 8 k的程序缓存。因此,当c p u在执行指令时,当要执行的指令在 c p u内部 的程序缓存中,c p u并不会中清总线,避免了多个 ma s t e r同时中请总线频繁的 情况。同时,由于在 l c d c和 m a c模块设计了 d m a , c p u只需发送命令使能 l c d c和 ma c 就能使这两个模块开始工作,而不需要再执行指令向这两个模块 发送数据。 由 卜 分析,可以得出结论,在数据传输量比较大的模块设计 d ma 对提高 m c u性能使有利无弊的。而对于数据传输量小的模块,该些模块被设计成只作为 a m b a上的s l a v e 模块,从而节省了硬件面积。 当模块具有 d ma 的工作模式时,c p u仅需发送数据在存储器的地址给相应 的模块即可例如对于m a c 当 c p u要发 送帧数据时,c p u把该 帧数据在存 储器中的地址值发送给 m a c ,同时还要发送该帧数据的民 度等些附加信号当 ma c被使能发送数据时,即中诸控制权,在存储器的相应地址区间取得指定长度 基于 c k 5 1 0 的3 2 位m c u 功能 设计与 验证 的 数据,存放与m a c内部的发送f i f o中。该 种模式即为b u f f e r d e s c r ip t o 模式, 关1 几 b u t t e r d e s c r i p t o i 的详 纪 描述将r l- m a c 这一11 种详-q l 介绍。 在本设计中,l c d c模块和 ma c模块均采用了 d ma模式数据存取,其余的 模块采用了仅作为s l a v e 的模式。 仅作为s l a v e 模块的接l 7 v e r i lo g 源代码如附录所, f . ,该接n 的主 要功能 是 从 a m b a总线 匕 获取地址、读写控制信号、传输控制信号、读写数据等信号。囚 为 a h b总线采用 二 级流水结构,因此功能模块在获取地址和控制信号时首先要进 行 一 级锁存,对地址和传输类型进行判别后再作出响应。 作为m a s t e r模块的总线接口 的v e r il o g 源代码也如附录所示, 该接口 不仅 要包含 s l a v e模块的功能,并且要根据 a h b总线的协议能发起总线请求,并月 发送相应的地址、数据和控制信号。 墓于c k 5 1 0 的3 2 位m c u 功能设计与验证 第四章以太网控制器 (ma c) 设计 4 . 1 简介及结构设计 m a c( m e d i a a c c e s s c o n t r o l le r )是a h b总线与以太网 物理芯片的接 仁5 6 在 : c k 5 1 0 m c u中, m a c 遵从i e e e8 0 2 . 3 1办 议1 0 ,支持 l o ml o o m传输速率,同 时支持全双工/ 半双工传输。在本设计中,与m a c相匹配的物理芯片为 r ealt ek 公 司的 r t 王 名 2 01 芯片。m a c通过数据接 口传输数据,并且利用 mii(media i n d e p e n d e n t ln t e r fa c e ) 配 置r t l s z o l 的 内 部 寄 存 器 汇川 。 m a c的 结 构 框图 如 图4 一 1 所不。其中 a mb a 一 m a cint e r f a c e是 m a c与 a h b的接口模块,m a ct x m o d u l e是 m a c数据发送模块, m a cr xm o o u l e是 m a c数据接收模块, m a cc o n t r o lm o d u l e为全双工模式下控制发送和接收控制帧的模块,mll m o o u l e 为配置r t l 8 2 0 ! 的数据配置模块。 / 一 : - - - - - - - - - - - - - - - - - - - - - - - - - - -一 、! 二 弓 户 ! m a c t x m o d u l e公 amba一 mac 】 nte rf ac巨 画夏孺 而 丽 一: 匕 一 兰 坚 王 里 竺 竺一 一 一 际一 民 泣二 六 !一 / mac rx m od ie p hys i ca l chi p ( r t l 8 2 0 1 ) m l l mooule 1一口 巳 一籣_一 ( 图4 一ima c结构框图) a mb a 一 ma cin t e r f a c e是 ma c中重要的一个模块, 读取和存放数据的 a h bma s t e r模块、用于配置整个 m a c 它包含了从存储器中 模块的寄存器模块、 基于c k 5 1 。 的3 2 位m c i 功能设计与验证 用于存放发送和接收帧地址指针的b u f f e r d e s c r i p t o r 模块以及与物理芯片提供的丁 x c lo c k 和r x c l o c k 数据同步的模块。其设计结构框图如图4 -2 所% r a hb l /尸 、咬 一 - slave 2二一 b u f f e r d e s c r i p t o r s 下 于 、/11 m as ter ( f e t c h o r s t o r e d a t a 行o m o r t o s dr am) ( 图4 -2 a mb a - ma c i n t e r f a c e 结构框图) 在 r_ 图所t的 a m b a - m a c in t e r f a c e的结构框图中,m a s t e r模块是 - 个在 a m b a 匕 的 m a s t e r 模块,该 模块的作用是用来从 m c u的存储器的相应地 址中读取一帧数据到 t x f i f o和把 r x f i f o中的数据存放到相应的存储器空间 中。在 ma c 的设计中,数据的存取是通过在 m a c上设计了一个 a h b的 m a s t e r来实现的。在 ma c中设计了一个 a h b的 ma s t e r后,ma c的数据读 取可以 通过d m a ( d i r e c t m e m o r y a c c e s s )的 方式进行,这样的方式的优点是u j 以 不通过 ( c p u而直 接在存储器与m a c之间进行数据交4 . 0在 m a c!一卜 设计 d m a的 原因是: 通常一 帧以太网数据帧的 最小长 度为6 4 6 y t e ,即为1 6 个w o r d 。 一 帧数 据 的数据量较大,因此采用 d m a传输方式, 可以加快数据的传输速度,并且降低了 c p u的负担。r e g is t e r 是 m a c的控制寄存器,其功能将在 4 .2节中详述。b u f f e r d e s c r i p t o r s 是存放 一 帧数据的 地址的, m a s t e r 模块通过读 取b d中的 地址值而从 存储器中读取或存放相应的一帧数据o t x f i f o和r x f i f o用于存放帧数据。对于 t x f i f o ,写数据与 h c l k 同步,而读数据与 mt c i k ( m t c i k 由r t l 8 2 0 1 提供,为 以太网发送数据时钟,在 l o m 以太网传输模式下,其值为 2 . 5 m,在 l o o m以太网 基于c k 5 1 0 的3 2 位m c u 功能设计与验证 传输模式下,其值为 2 5 m)同步。由于数据之间的不同步,因此在 t x f i f o的数 据传输中,设计了如下描述所述的数据读取过程。对于 r x 模块,其原理类似。 i ) t x f i f o的数据存放于数据输出口d - o u t ,并产生一个输出使能 o u t p u t e n a b le 信号; 2 ) d - o u t 中数据经过由 m t c i k触发的两级寄存器消除亚稳态后输出 给 t x e t h e r n e t ma c模块; 3 ) t x e t h e r n e t ma c模块产生一个数据发送好的信号 t x d o n e ; 4 ) t x 一o n e 经过由h c l k 触发的 两级寄存器消除亚稳态后输出 给t x f i f o 模块; 5 ) t x f i f o 将地址 十1 ,将新数据放置于 d o u t后 ,同时产生 o u t p u t e n a b le 信号, 用于下一次 数据读取。 t x e t h e r n e t f i f o模块用于将 ma c in t e r f a c e 中发送的数据按以太网帧的格式 发送给 r t l 8 2 0 1 芯片。而 r x e t h e r n e t f i f o模块则是从 r t l 8 2 0 1 接收到的以太网 帧中 提 取 数 据, 并 发 送 给m a c i n t e r f a c e 模 块。 4 . 2 寄存器设计 在ma c中的寄存器是用于c p u配置 ma c工作状态和让 ma c发送什么数据 的,基卜ma c的体系结构与 其功能的要求,设计了如表所t的寄存器结构。寄存 器的结构将在本节中详细阐述。寄存器的功能设计要求上包括了 m a c的收发控 制、m a c数据存取、mi l 控制以及 p a u s e中断控制等。设计的 m a c寄存器列表 如表4 一1 所不: 寄存器名地址位宽读写 mode r0 x 0 03 2rw i nt s ource0 x 0 43 2rw i nt mas k0 x 0 83 2rw 中断源掩盖寄存器 i p gto x 0 c3 2rw 背靠背包间寄存器 i p gri0 x1 03 2rw 非背靠背包间寄存器 ! i p gr20 x1 43 2rw 非背靠背包间寄存器 2 p acke tl e no xi 83 2rw 包长度寄存器 c ol l co nf o xi c3 2rw 冲突与重发送寄存器 tx bd num0 x 2 03 2rw 发送缓存指针数 ctrl mode r0 x 2 43 2rw 墓于c k s 1 0 的3 2 位m c u 功能设计与验证 m1 1 mode r0 x 2 83 2 rw m“ 模式寄存器 m1 1 commando x 2 c3 2 rw mi i add r e s s0 x 3 03 2rw mi i t x d at a0 x 3 43 2rw m i l 发送给物理芯片的数据寄 存器 mi i r x d at a0 x 3 83 2 rw m i l 接收物理芯片数据寄存器 mi i s t at uso x 3 c3 2 rw m i l 状态寄存器 mac addr o0 x 4 03 2 rw m a c地址寄存器0 mac addri0 x 4 43 2rw m a c地址寄存器 i e t h h as h o adr0 x 4 83 2rw h a s h 表寄存器0一 e th has hi adro x 4 c 3 2rw h a s h 表寄存器 1 e th txctrl0 x 5 03 2rw 传输控制寄存器一 门 ( 表4 一1 m a c的寄存器列表) 以下表格为m a c中的几个重要寄存器的详细描述: m oder ( m o d e re g i s t e r f -il 5 1 6 描述 rw r e c s m a l l 一 接收短包控制 0 =包长小于min f l 的包被忽略 1 = 包长小于mi n f l 的包被接收 p a d 一 允许填充数据 0 = 对于长度不够的短帧不允许填充数据 1 =对于长度不够的短帧允 许填充数据 h u g e n一允许超长 度包 0 = 最大的长度为m a x f l ,超过的数据被抛弃。i = 长度为6 4 k b 的帧允许被传输。 些rw rw =发送模块在每帧数据 rw c r c e n一允许循环兀余检测 ( c r c) 0 =发送模块不在每帧数据后加c r c码。 后加 c r c码。 d l y c r c e n一允许延迟c r c 0 = 普通操作( 在s f d后立即计算c r c 值) b y t e 才开始计算c r c 值。 =c r c开始后的4 个 am rw f u l l d一 双工模式选择 0 二半双工模式 1 = 全双工模式 e x d f r e n一 允许超长延迟 0 =到达到超长延迟极限时,该帧被丢弃。 等待载波到来。 11-川 一9 一 rw =ma c模块无限期得 rw b c k o f 一没有延迟 普通模式 ,使用万 _ 进制指数延迟算法。 i =当 冲突发送后, 墓于c k 5 1 0 的3 2 位m c u 功能设计与验证 ma c立即发送数据。 7rw l o o p b c k一回接 0 =普通模式1 = 丁 x 信号回接给 r x 信号。 6rw 5rw p r o一 混杂 0 = 对于接收的包检查其目 标地址。 i 二 接收所有的包。 4rw i a m一 单独地址模式 。 =普通模式( 当该包接收时,物理地址被检测) 。1 = 对所有的单独 接收的包用 h a s h 表来检测其地址。 3rw b r o一广播地址 0 =接收所有包含厂播地址的包。1 =拒绝接收所有包含广播地址的 包,除非 p r o= i . 2rw n o p r e 一 没有开始特征字 0 = 普通模式( 7 一 b y t e s 的开始 特征字) 。1 = 没有开始特征字。 1rw t x e n一 允许传输 0 二不允许传输。i =允许传输。 orw r x e n一允许接收 0 =不允许接收。1 二允许接收。 复1 . 值 : mode r o o o o ao o o h 4 . 3 数据流描述 在本设计中,c p u可以先通过向m a c 模块发送控制字,由m a c的 mi l 模块 向物理芯片发送 r e s e t信号,让 r t l 8 2 0 1 恢复初始值。在 m a c的 h o s t i n t e r f a c e模块中,包含有两个 a h b的 s l a v e模块和一个 a h b的 ma s t e r 模块。 这两个a h b的s l a v e 模块分别是m a c的b u f f e r d e s c r ip t o r j i i m a c的 配 置寄存器。a h b的 ma s t e r模块能够发起总线请求,把要发送的数据从 s d r a m 中取到 ma c的发送 f i f o中,然后通过 t x m a c m o d u l e发送给物理芯片,也 可以从物理芯片中把接收 f i f o中的数据写到 s d r a m 中。接收 f i f o中的数据是 一 r x ma c mo d u l e从物理芯片中接收到的。 4 .3 . 1 b u f f e r d e s c r i p t o r 的 设计 m a c的配置寄存器作为a h b 上的 一 个单 独的 s l a v e . c p u可以通过向配置 寄存器写数据达到对寄存器配置的目 的。配置寄存器的描述均在寄存器设计这一 章 中4 故了描述。 墓于c k 5 1 0 的3 2 位m c u 功能设计与验证 b u f f e r d e s c r i p t o r 是m a c中的一个重要模块。该模块的卞要功能是,当c p u 想要通过 m a c发送一帧数据时, c p u首先向 b u f f e r d e s c r ip t o r 发送该帧数据在 s d r a m中 的 地址, 同时也向b u f f e r d e s c r ip t o : 相应位设置该帧数据的 一些 特性, 如 帧长、 循 环兀余检测等。 侮帧数 据的 配置 信息在b u f f e r d e s c r i p t o : 中占 用6 4 6 it 发 送i帧的 数据和接收帧的数据会存储在b u f f e r d e s c r i p t o r 相应的 位置。 发 送b u f f e r d e s c r ip to r 的 描 述 如 下 所 示。 addr=of f s e t +0 3 1 1 3 0 - t 2- 9- t 2- 8 2 7 2 6 1 2 5 2 4 1 2 3 1 2 2 2 1 2 0 1 91 -1 1 81 1 71 l 6 le n 1 5 一 1 4 一 1 3 ! 2 一 i t 1 0 9一 厄 一 7 6 5 43 一 2 一 0 rd i r qil w r i p a d c r c,j r e s e r v e d 一 u ri 一 r t r y 3 :0 一 r l一 l c dfi c s 3 11 3 0 -11 3 0 -11 3 0f1 1 3 0 2 9 2 8 1 2 7 1 2 6 2 5 2 4 1 2 3 1 2 2 1 2 1 j 2 01 1 91 1 8 1 7 1 1 6 t xp nt 1 5 1 1 4 - f l 3 1 2 1 1 1 1 1 0 9 1 8 1 7 1 6 ! 5 4 1 3 2 if o txp nt 发送 b d的寄存器功能设计如下表所不: addr=of f s e t +0 位号读写 3 1 一 1 6rw 一 1 5 一 一 一 一 一 rw 14rw 1 r q一 中断请求使能0 =发 送结引 的帧传输接收后产生中断。t x b戴 屯 后不产生中断。 i =当b d相应 : t x e 被置位。 i 3rw wr一 包裹。 = 在缓冲描述表中,当前的b d不是最后一帧要发送 的数据。1 =当前的b d是最后一帧。 1 2rw p a d一允许填充0 =当发送短帧时,不填充数据。 二 在短帧数 一 据后填充数据,使到达最小帧长度要求。; rw c r c一允许 c r c 0 =在帧后不添加c r c . ! = 在帧后添加 crc. 保留 8rw u r 一 u n d e r r u n当 发 送缓冲的 数 据不够时,该位置位。. 7 : 4rw 纂于 c k 5 1 0 的3 2 位m c ii 功能设计与验证 r w rn 一 重发送的上限 一延迟的冲突 当发送失败时,该位置 t o 当发送该帧数据时,延迟冲突产生,则该位置 延迟冲突的时间在c o l l c o n f 寄存器中被定义。 m一lcio 、j一,一 r w k认 d f 一延迟产生。 c s 一 载波监听丢失 位被置位。 of f s e t +4 概t - 4m #r t 指当前帧被成功传输时已经被延迟过。 当一帧数据在发送时如果载波监听丢失则该 addr = 泻一w 读一即 该寄存器存储着内存中该帧数据的存储位置。 接收b u f f e r d e s c r i p t o r 和发送b u f f e r d e s c r ip t o r 设计的原理类似, 在次不再赘 述。 4 . 3 . 2 m1 1 的操作 ml l 模块用 j 几 ma c配置 r t l 8 2 0 1 和从 r t l 8 2 0 1 中读取状态位。其结构框图 如图 4 -3所不。其中 c l o c k g e n e r a t i o n mo d u l e 是用于产生 mi l 时钟。s h i ft d a t a m o d u l e 用于产生对 r t l 8 2 0 1 配置的串行数据,该数据与 mi i 时钟同步。 o u t p u t c o n t r o l mo d u l e 用于产生配置 r t l 8 2 0 1 的时序。 f r o m s l a v e c o n f ig u r a t i o n r e g i s t e r s 一 一 一 一 一 众d p u t co n t rol mo d u l e p hy c卜 l i p 一口斗 ( 图4 -3 mi i 模块的结构框图) r t l 8 2 0 的数据手册可以从 w w w . r e l t e k . c o m 卜 载到。 图 4 - 4所/7 、 为标准的 m a c配置 r t l 8 2 0 1 时序,w r it e c y c le为 m a c 1p 7 r 丁 l 8 2 0 1 写配置数据, r e a d c y c le 为m a c从r t l 8 2 0 1 中 读取r t l 8 2 0 1 的 工作 状 态时序。m1 1 模块的主要功能是产牛图示的时序,可以 用有限状态机实现。 墓于c k 5 1 0 的3 2 位m c u 功能 设计与验证 厂 1 几曰 一 门 曰几丁 几 丁 飞口 , 门门 门r ll l门 f l l f wl rni 月. 几 m丁 飞 厂, 口一 -y x一 x- k 二) 仁 ) 任 ) 三c d 万x - 仁:dc d 二 x 二 31 泣 d c 诬x? 已 一二一一,一 卜 ,尸十二 一一一十一 一 一 . 卜二 =一 二 二 一; 二=台 . 汽 一- 一- 一一 州 write c v c l e 丁曰 几 厂 l f z j - l i 飞 几 几 几i lf i fl r l 几f sl - l t l tl i 1 r l 口. 曰卫几 丁 飞 厂 匕 八 丁 飞 丁 u七r l t 习 几厂 匕 - 一灯沐 二 义 弓 )乏 ) 泣 x 二 ( )二 沐 三 泣 又 任 只 三 x 0 0 ( 弓 吃 沙 乞 沐 三 狡 仁x 二 ( 仁 ) 二 x d i4 数据按象素h 寸 钟同步的方式传送给# i 应的 l c d显/ j: 屏。l i n e f i f o为一个4 示 数据 f i f o,用于 存 储能够显t l c d 一 行的数据值。采用 l i n e f i f o的原因是防止数据显% r 不够 一 行 而 消失 。 基于 c k 5 1 0 的3 2 位m c u 功能设计与验证 门月一 6 . 2 寄存器设计 寄存器页包括了 l c d c中的控制寄存器,各种时间寄存器,上行与下行基准 地址寄存器,中断寄存器,中断掩盖寄存器,各种抖动模式寄存器和调色板寄存 器。通过配置这些寄存器,可以方便得与 各种 l c d屏匹配。l c d c的寄存器包含 了 模式选择t f t / s t n 、时间参数设定、显t面板设定等。 表6 -1 为本设计中l c d c模块的寄存器列表: 一 寄 存 器 名】地 址】 长 度 】 读写 1描 述 haddri 1 1 : 0 l c d c o n t r ol l cd t i mi ngo l cd t i mi ngi i . cd t i mi ng2 0 x 0 0 0 0 x 0 0 4 0 x 0 0 8 o x 0 0 0 0 x 01 0 0 0 1 4 0 x 0 1 8 o x 0 1 c 0 x 0 2 0 0 x 0 2 4 0 0 2 8 o x o 2 c o x o 3 o o x o 3 4 o x o 3 8 o x o 3 c 0 x 0 4 0 o x o 4 4 r / w r/ w r / w 阳 w r / w 控制寄存器 水平轴面板时间寄存器 垂直轴面板时间寄存器 面板时钟和信号极性寄存器 l cd p b as e面板基地址寄存器 保留 l cd p curr面板当前地址寄存器 保留 l cd i nt s ta t l cd i nt mas k l cd d p o / i l c d dp 2 / 3 l c d d p 4 / 5 l cd dp 6 / 7 l c d dp 8 / 9 l cd d pi o / 1 1 i . co d p 1 2 / 1 3 l cd dp1 4 / 1 5 r / w r / w r / w r / w r / w r / w r / w 刚 w r / w r / w rp wyr k - mly fif-a 一 一 一 # 燮矍 l ll 巫v 签 坐旦 a n d 卫 - 抖动模式灰度等级2 a n d 3: 抖 动模式灰 度等级
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 家庭常用电器能耗及维护指南
- 电商促销活动数据分析及效果评估
- 药物分离纯化工节假日前安全考核试卷含答案
- 飞机雷达安装调试工节假日前安全考核试卷含答案
- 电线电缆交联工节假日前安全考核试卷含答案
- 道路巡视养护工国庆节后复工安全考核试卷含答案
- 小学语文课堂实录教学评价报告
- 工业自动化项目工程结算单编制规范
- 软包制作工艺流程与质量控制标准
- 教师招聘考试全真模拟试卷
- GB/T 29433-2012学生心理健康教育指南
- 农作物品种区域试验站建设实施方案
- 疫情防控 5.1普法教育培训记录表AQ-C1-18
- 有砟轨道施工课件
- ISO9001:2015质量管理体系内审和管理评审全套资料
- 中国的世界文化遗产课件
- 万科企业股份有限公司员工职务行为准则
- 幼儿园教学课件《半条棉被》课件
- 一建市政记忆口诀
- 阀门系数Cv和KV值计算表格(带公式)
- PETS公共英语二级大纲词汇
评论
0/150
提交评论