|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
' K) t. [5 c: m2 ~- e+ h5 A摘要:在MCS96系列单片机的应用开发中,经常会遇到需要大容量的数据存储器的情况。-种段式# e- B3 m5 U4 A( g
管理的大容数据存贮器扩展技术给出了解决办法,但是该技术的核心部分是采用子程序来实现,因而在
0 Q$ ]- _+ {& |, @7 W应用于实时系统时受到了限制。本文针对这种段式管理的大容量数据存贮器扩展技术存在的缺点,提出了
/ U. {* e& i( r& ^利用CPLD芯片与单片机综合的应用模式来实现原有扩展方法的改进,由于采用CPLD的硬件实现大大减1 t3 C! I1 {# y( M8 |
少了数据存贮器寻址时间,从而使得段式管理的扩展技术能够应用于实时系统.
4 F5 m! q9 q+ e0 K0 ], F- C关键词:单片机; 逻辑地址;物理地址; CPLD8 Z5 o9 E0 `) C
# n" A! d# {1 v: T4 U
1引言
4 @4 s0 ~& ^9 \0 N6 bMCS96系列单片机是一种比MCS51系列单* I! a( O9 g a% F" ?
片机功能更全,性能更高的单片机。在应用开发
Z& r6 E6 }: ^. ^2 |& `* L& H中,它经常会遇到需要大容量的外部数据存储器
- g& w2 \1 C% p的情况。由于MCS96系列单片机的内存体系结
~) c" h9 }8 Y# ~构采用普林斯顿结构,因此和采用哈佛结构的$ T2 V& p; `- f& c7 F i5 D, c% Q" \
MCS51系列单片机的外部数据存储器的扩展是$ U2 k. l: u/ G1 t, U4 V
有差别的。如果采用和MCS51系列单片机相同
0 X( L( J d# C2 U* |的外部数据存储器扩展方法,则会造成整个数据
9 J: X& B) a5 K9 _) u1 F存储器的物理地址空间不连续,因而是不便于用$ E& N8 B4 p" a D
各种高级语言编程的,在参考文献[1]中给出了一
. u3 E1 N1 n$ `. t& q- _5 N! k7 a种段式管理的扩展方法,该方法通过设置逻辑段
5 L0 S Y* Z, N! c Q表,利用子程序来实现逻辑地址与物理地址之间
: f5 A9 C: @, O的转换,从而实现用连续的逻辑地址来编程,克
9 a4 w# _& G @服了不连续的物理地址空间的缺陷,便于用户采! i9 C- i" K+ u3 F5 T
用高级语言来编程,而且对各段存储空间的数据
* f! i2 i+ j! h提供了保护。该扩展技术最大的扩展容量可达到7 U; e7 t0 Z8 f- X4 P4 S7 W
8MB,对于采用FLASHRAM的数据存贮器芯片( z& o6 l( z+ m |
的扩展尤其适用,它可以使得硬件电路非常简单,1 h1 Z' m; @8 T$ x, T6 n l
不需要使用地址译码器,参考文献[2]就给出了针
& O* U- Z6 Q" l W1 L0 F对FLASHRAM的一种应用实例。虽然这种段式
% M* v3 }8 Y6 g# b' F9 V管理的扩展方法能够用于扩展大容量的外部数据$ Y N# ^4 Z5 G. x6 E! M4 h- }
存储器,但是由于是采用子程序来实现逻辑地址+ z" J6 A2 {: G% c
与物理地址的转换,因此在外部数据存储器的寻
' V. u1 @& Z, X址时是要费一定时间的,对于- - 些实时应用系统$ n+ [7 j/ H; V9 E, [* Q
是不适用的。针对这种缺点,本文通过单片机与
. a3 H4 O/ b' q E9 iCPLD的综合设计模式,利用CPLD来代替段式
3 N" h3 m, c* O! W管理扩展方法中的转换子程序,从而使得这种扩
$ ^& U, Z3 m0 J7 s& Y展方法能够适用于实时应用系统。
$ b0 h6 z6 S$ c8 {7 l# M( y2 k3 y- N* R" q' S
+ W) d, I$ k* O7 I3 ?+ B
* v1 D/ D7 Z$ z* N n* [ |
|