0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于5l单片机和RTL8029控制芯片实现PCI接口设计

电子设计 来源:单片机与嵌入式系统应用 作者:计卫东 2020-06-15 07:51 次阅读

51系列单片机是当前使用最为广泛的8位单片机系列,其丰富的开发资源和较低的开发成本,使51系列单片机现在以至将来都仍会有强大的生命力。在网络技术飞速发展的今天,实际工作中有将51系列单片机系统接入网络的需求。由于5 1系列单片机没有集成以太网接口,因此,如何将51系列单片机系统接入网路是一个值得探讨的课题,其关键就是在硬件上如何实现单片机与以太网控制器的接口。本文将讨论这一课题。

1、以太网控制器

***Realtek公司的以太网控制器是一种符合IEEE802.3以太网标准的控制器,有RTL8019、RTL8029和RTL8139等系列。其中RTL8019是ISA总线的,较易与8位MCU实现接口。RTL8029和RTL8139是PCI总线的,不能直接与8位的MCU接口,需要一个PCI接口进行转接。考虑到目前RTL8029在市场上较容易购买,故采用RTL8029以太网控制器作为网络接口。

基于5l单片机和RTL8029控制芯片实现PCI接口设计

RTL8029内部已经包含有整个网络接口层的协议 (PHY层和MAC层协议),因此应用起来较简单。用户不必考虑链路控制问题,而只需考虑单片机如何从RTL8029中去读TCP/IP协议的数据即可。

PCI总线信号有3.3V标准和5V标准,信号线众多,但是并不是所有的PCI设备都使用全部的PCI接口信号,实际上只使用它们需要的即可。RTL8029AS以太网控制器遵循5V标准,并且只使用了PCI总线信号中的以下部分:

AD[31:0]――数据信号复用总线。

FRAME――帧周期信号,由当前主设备驱动,表示一次访问的开始和持续时间。

IRDY――主设备准备好信号。

TRDY――从设备准备好信号。

C/BE――总线命令和字节使能复用信号。地址期是总线命令,数据期是字节使能。

IDSEL――初始化设备选择信号。在参数配置读写传输期间,用作片选。对于只有一个PCI设备的情况,它可以总接高电平。

RST――复位信号。

CLK――系统时钟信号,频率范围DC~33MHz。以上信号都在CLK的上升沿有效。

INTA――中断请求信号,RTL8029数据准备好后可以用来向主控制器发出中断。

DEVSEL――设备选择信号,表明驱动它的设备已成当前访问的设备,由于在单片机系统中,RTL8029是单一的PCI设备,因此该信号可以不用。

2、 PCI接口设计

在以太网控制器的接口信号中,除地址数据总线是双向的外,TRDY信号由以太网控制器产生,方向为从以太网控制器至PCI接口;其余信号都由接口部分产生,方向是从PCI接口至以太网控制器。

接口设计的思路是:可将PCI接口当作单片机的外部存储器看待,单片机以读写外部存储器的时序对PCI接口进行读写,再由PCI接口将这种读写操作时序转换成PCI时序对以太网控制器进行操作。

单片机在进行外部存储器操作时用到的信号有PO口、P2口、ALE以及RD和WR信号。其中,P0口为地址(低8位)/数据复用,P2口为高8位地址信号;ALE为地址锁存信号,为高电平时将P0口的值锁存到低8位数据线上;RD和WR为读写有效信号,低电平有效。因此,PCI接口实际上是起到一个从8位单片机读写时序到32位PCI读写时序转换的作用,原理框图如图1所示,访目时序如图2所示。

在图2中,可以完成对PCI设备的配置访问与I/O读写访问,只要有这两种访问就完全可以实现单片机对RTL8029的操作。IDSEL信号只是在配置访问中才起作月,在I/O访问中不使用该信号。

FRAME有效后的第一个时钟前沿是地址期的开始。此时在AD总线上传送地址,在C/BE总线上传送命令。IRDY有效后即为数据期,此时在AD总线上传送数据,在C/BE总线上传送字节使能。但数据的传输是在IRDY和TRDY同时有效的时钟前沿进行。字节使能指明此时32位数据线上的数据中哪一个数据字节是有效的。

读配置的过程:首先送地址,送命令(命令值为1010B)和字节使能,再读配置空间中的内容。

写配置的过程:首先送地址,送命令(命令值为101lB)和字节使能,再送配置数据。

读I/O的过程:首先送地址,送命令(命令值为0010B)和字节使能,再读I/O空间中的内容。

写I/O的过程:首先送地址,送命令(命令值为001lB)和字节使能,再送数据。

在I/O访问中,AD[1:O]两位有特殊要求,需要与C/BE[3:0]相配合。当C/BEO有效时,AD[1:O]必须为00,当C/BE3有效时,AD[1:0]必须为11。在具体访问中,每当一个设备地址译码选中后,便要检查字节使能信号是否与AD[1:0]相符。如果二者矛盾,则整个访问将无法完成。因此,写单片机软件需要参考PCI总线协议中关于这一部分的内容,才能正确操作以太网控制器。

总线命令/字节使能(C/BE)寄存器的地址有效后的一个时钟周期内,FRAME信号应该有效,表示地址期开始,C/BE[3:0]总线上为总线命令,地址期可以只持续一个周期,然后立即进入数据期。在单片机系统中可以不考虑去支持复杂的PCI数据连发,进入数据期后,FRAME信号应立即拉回高电平,此时C/BE[3:0]总线上为字节使能。因此FRAME信号可以用总线命令/字节使能寄存器的地址信号来产生。

IRDY信号在数据期才有效,因此IRDY也可以由总线命令/字节使能寄存器的地址信号来产生或由FRAME信号来产生。

IDSEL信号只与配置访问有关,因此可以通过总线命令的命令字来产生。在I/O访问时。命令字的最高位bit3为O;在配置访问时。命令字的最高位bit3为l。因此,可以用该位来产生IDSEL信号。

另外前面已说明,可将PCI接口当作外部存储器来访问,因此,要从8位数据转换成32位的数据。PCI接口中需要设计以下寄存器:

寄存器0,对应于32位数据/地址总线的AD[7:0],用于写;

寄存器1,对应于32位数据/地址总线的AD[15:8],用于写;

寄存器2,对应于32位数据/地址总线的AD[23:16],用于写;

寄存器3,对应于32位数据/地址总线的AD[31:24],用于写:

寄存器4,对应于32位数据/地址总线的AD[7:O],用于读;

寄存器5,对应于32位数据/地址总线的.AD[1 5:8],用于读;

寄存器6,对应于32位数据/地址总线的AD[23:16],用于读;

寄存器7,对应于32位数据/地址总线的AD[31:24],用于读;

总线命令/字节使能寄存器,对应于C/BE[3:0];

复位寄存器,用于对RTL8029AS的硬件复位操作。

根据以上分析,得PCI接口原理框图,如图3所示。

3、 接口的VHDL实现

以上代码在Qaartus II下编译并综合,占用149个宏单元的资源,可选用CPLD器件MAx7l60来完成。

4、 结语

本文所阐述的设计方法,已成功应用在无线电监测系统的远程控制中,通过5l单片机系统接入以太网,实现了在网络上对远程机房设备的无人监控。

责任编辑:gt


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    452

    文章

    50150

    浏览量

    420487
  • 单片机
    +关注

    关注

    6030

    文章

    44482

    浏览量

    631738
  • 接口
    +关注

    关注

    33

    文章

    8436

    浏览量

    150688
收藏 人收藏

    评论

    相关推荐

    DSP与PCI网卡接口设计

    DSP与PCI网卡接口设计 介绍了Realtek公司生产的具有PCI接口的以太网控制芯片
    发表于 09-19 09:43

    如何实现单片机PCI总线接口的并行通信?

    如何实现单片机PCI总线接口的并行通信?
    发表于 04-29 07:14

    基于CPLD的单片机PCI接口设计

    详细阐述一种利用CPLD 实现的8 位单片机PCI 设备间的通信接口方案,给出用ABEL HDL编写的主要源程序。该方案在实践中检验通过。
    发表于 04-14 17:32 34次下载

    8位单片机与以太网控制

    以CPLD 为器件,采用VHDL 语言,设计了51 单片机与32 位PCI 总线以太网控制RTL8029 之间的接口逻辑,
    发表于 04-15 08:48 36次下载

    8位单片机与以太网控制RTL8029接口的V H D L

    以CPLD 为器件,采用VHDL 语言,设计了51 单片机与32 位PCI 总线以太网控制RTL8029 之间的接口逻辑,
    发表于 05-18 14:34 30次下载

    RTL8029AS PCI 10M网卡双端口电路图(prot

    RTL8029AS PCI 10M网卡双端口电路图(protel,orcad原理图和PCB) .DDB为protel99格式.DSN为ORcad格式为双端口(utp同轴电缆,bnc双绞)接口
    发表于 08-06 09:11 245次下载

    5l单片机操作系统开发中的问题与技巧

    5l系列单片机是美国Intel公司在1980年推出的高性能8位单片机,在我国的应用非常广泛。目前, 在软件设计中需要软件工程师从底层做起,在系统软件设计方面需要做大量的重复性劳
    发表于 11-07 14:40 21次下载

    RTL8029AS Realtek PCI Full-Dup

    RTL8029AS
    发表于 07-01 09:53 21次下载

    用51单片机控制RTL8029实现以太网通信

    摘要:本文介绍了TCP/IP协议、RTL8029的结构特性以及PCI总线协议的特点,给出了一种用P89C51RD2单片机控制以太网接口
    发表于 09-19 21:11 58次下载

    基于CPLD的单片机PCI接口设计

    摘要:详细阐述一种利用CPLD实现的8位单片机PCI设备间的通信接口方案,给出用ABEL HDL编写的主要源程序。该方案在实践中检验通过。 关键词:
    发表于 06-20 13:31 950次阅读
    基于CPLD的<b class='flag-5'>单片机</b><b class='flag-5'>PCI</b><b class='flag-5'>接口</b>设计

    基于CPLD的单片机PCI接口设计解决方案

    基于CPLD的单片机PCI接口设计解决方案 8位单片机在嵌入式系统中应用广泛,然而让它直接与PCI总线设备打交道却有其固有缺陷。8位
    发表于 09-26 17:41 875次阅读
    基于CPLD的<b class='flag-5'>单片机</b>与<b class='flag-5'>PCI</b><b class='flag-5'>接口</b>设计解决方案

    51单片机多任务机制的实现策略研究

    从操作系统实现多任务机制的原理入手,分析了51单片机实现多任务机制的基本条件,论述了5l单片机实现
    发表于 09-19 17:26 159次下载
    51<b class='flag-5'>单片机</b>多任务机制的<b class='flag-5'>实现</b>策略研究

    8位单片机与以太网控制RTL8029接口的VHDL设计

    8位单片机与以太网控制RTL8029接口的VHDL设计
    发表于 01-14 14:42 18次下载

    如何使用51单片机控制RTL8019AS实现以太网通讯

    介绍以太网的帧协议和以太网控制芯片RTL8019AS的结构特性;介绍51单片机控制RTL8019
    发表于 07-19 17:37 12次下载
    如何使用51<b class='flag-5'>单片机</b><b class='flag-5'>控制</b><b class='flag-5'>RTL</b>8019AS<b class='flag-5'>实现</b>以太网通讯

    AT89C52单片机实现以太网接口控制设计

    随着互联网的迅速发展,网络用户飞速增长,在使用计算机进行网络互联的同时,各种家电设备、仪表设备及工业中数据采集与控制设备也在逐步走向网络化,基于此结合专用的以太网控制芯片RTL8019
    发表于 03-03 11:17 2779次阅读
    AT89C52<b class='flag-5'>单片机</b><b class='flag-5'>实现</b>以太网<b class='flag-5'>接口</b>的<b class='flag-5'>控制</b>设计