中风的人吃什么好| 骶椎隐裂是什么意思| 幼小衔接都学什么知识| 胃癌早期有什么症状| 胸口疼应该挂什么科| 鲁字五行属什么| 峰值是什么意思| 低血糖挂什么科| 肾炎的饮食应注意什么| tomboy是什么意思| 冲是什么意思| 肾上腺是什么| 龟头炎用什么软膏最好| 口腔溃疡缺乏什么维生素| 肾结石忌口什么| 晴空万里什么意思| 肌酐偏低是什么意思| 牛和什么生肖相冲| 全腹部ct平扫主要检查什么| 政治家是什么意思| 刘三姐是什么生肖| 睡觉一直做梦是什么原因| 内痔有什么症状与感觉| 被男人操是什么感觉| 大生化检查能查出什么病来| 幺蛾子是什么意思| 先天性聋哑病属于什么遗传病| 睾酮高有什么影响| 下巴脱臼是什么感觉| 为什么胃有灼热感| 盆腔炎吃什么消炎药效果好| 胎盘宫底后壁是什么意思| 背叛什么意思| 一个日一个斤念什么| 需要一半留下一半是什么字| 检查肝做什么检查| 上火流鼻血吃什么降火| 三碘甲状腺原氨酸高是什么意思| 垂体是什么意思| 失眠多梦吃什么药效果最好| 手为什么会抖| 肝看什么科| 高反是什么意思| 清朝是什么时候灭亡的| 一个口一个塞念什么| 烧伤的疤痕怎么去除用什么法最好| copd什么意思| 边什么边什么| 碳14和碳13有什么区别| 舌战群儒是什么意思| 上海有什么特色美食| 胆的作用和功能是什么| 做b超前需要注意什么| 夏天适合种什么水果| 交运是什么意思| 玛卡是什么药| 十二月二十七是什么星座| 充电宝100wh是什么意思| 人格是什么| 世界上什么动物牙齿最多| 胆红素高吃什么食物能降得快| 不走寻常路是什么意思| 诸事皆宜是什么意思| 5月19日是什么星座| 火花是什么生肖| 心率低有什么症状| 胃潴留是什么病| 溘然是什么意思| 65岁属什么| 甘油三酯高吃什么| 左束支传导阻滞是什么意思| 喝石斛水有什么禁忌| 南无阿弥陀佛是什么意思| 圆脸适合什么发型好看| 摇呼啦圈有什么好处| ntr什么意思| 健康证什么时候可以办| 有什么功效| 吃什么止咳| 女人的排卵期一般是什么时候| 关羽的武器叫什么| 梦见自己给自己理发是什么意思| 梦见刀是什么意思| 长脸型适合什么样的发型女| 妍字属于五行属什么| 儿童便秘吃什么最快排便| 塔塔粉是什么粉| 干贝和瑶柱有什么区别| 控诉是什么意思| 胃火吃什么食物好| 吃茄子有什么坏处| 芒种是什么时候| 正常白带是什么样子| 庚辰五行属什么| 今晚吃什么| 什么品牌的卫浴好| 一什么水珠| 美沙芬片是什么药| 用什么水和面烙饼最软| 肌肉疼是什么原因| 化验血常规能查出什么| 1938年中国发生了什么| 倒闭是什么意思| 镭射有什么危害| 阳春三月是什么生肖| 双肺散在纤维灶是什么意思| 减肥期间早餐应该吃什么| 多梦是什么原因| 经络是什么| 蛋白质变性的本质是什么| 吃什么最补胶原蛋白| 无力感什么意思| 菠萝是什么季节的水果| 申时出生五行缺什么| 健康证办理需要什么材料| 破处是什么意思| 跖疣念什么字| 世袭罔替什么意思| 东南方五行属什么| 恶露是什么样子的图片| 呼吸不过来要喘大气是什么情况| 曼字五行属什么| 嘴唇颜色深是什么原因| 什么人不能吃苦瓜| 宝宝睡觉头上出汗多是什么原因| 霸天虎和威震天是什么关系| 武则天叫什么| 什么东西嘴里没有舌头| 生殖器疱疹是什么病| 海外是什么意思| 这个季节种什么菜合适| 办理社保卡需要什么资料| 孩子打喷嚏流鼻涕吃什么药| 尿血应该挂什么科| 过敏性鼻炎用什么药效果最好| 羊奶和牛奶有什么区别| 阴茎进入阴道是什么感觉| 糖尿病是什么原因造成的| 山己念什么| apgar评分是什么意思| 梦见狗咬别人是什么意思| 女人吃枸杞有什么好处| 支气管舒张试验阳性说明什么| 锡兵是什么| 鸡奸什么意思| 为什么同房后小腹疼痛| 炎症有什么症状| 鸡胗是什么部位| 口腔溃疡吃什么水果好得快| 查岗是什么意思| 怀孕喝什么牛奶好| crp高是什么感染| 鲶鱼吃什么食物| 什么头什么臂| 女性脂肪率偏高说明什么| 五鬼是什么意思| 内内是什么意思| 墓库是什么意思| 嗜酸性粒细胞偏低是什么意思| bacardi是什么酒| 解落三秋叶的解是什么意思| 子宫肌瘤吃什么中药可以消除掉| 白色泡沫痰是什么原因| 三叶香是什么菜| 2003年是什么命| 什么牌子的空调最好| 减肥吃什么好| 洗假牙用什么洗最好| 什么时候着床| 一物降一物前面一句是什么| viola是什么意思| 二龙戏珠是什么意思| 什么面膜好用| 新生儿甲状腺偏高有什么影响| 脉紧是什么意思| 心悸是什么意思啊| 劳模是什么意思| 女人吃什么疏肝理气| 属虎什么命| 银装素裹是什么意思| 提上日程是什么意思| 吃什么会流产| 检查血压挂什么科| 乳环是什么| 逸事是什么意思| 喝冰美式有什么好处| 莆田荔枝什么时候成熟| 什么叫有格局的人| 任然什么意思| 莒姬是什么位分| 脂肪是什么组织| 距离产生美是什么意思| 老是嗝气是什么原因| 咳嗽不停是什么原因| 扬州有什么好玩的地方| 缺黄体酮会有什么症状| 银子发黄是什么原因| 抗心磷脂抗体阳性是什么意思| 空巢老人什么意思| 麒麟到了北极会变成什么| 双脚冰凉是什么原因| 自学成才是什么意思| 女人左下腹部疼痛什么原因| 碱性磷酸酶偏低是什么原因| 关爱是什么意思| 4p是什么意思| 遗留是什么意思| 长脚气是什么原因引起的| 小腿细是什么原因| 高血压吃什么水果好| 92年的猴是什么命| 备孕男性检查什么项目| 大拇指发抖是什么原因| 11月2号是什么星座| 明朝为什么会灭亡| 眼睛充血用什么药| 喝白糖水有什么好处和坏处| 暗送秋波是什么意思| 阴平阳秘是什么意思| 2016年是什么生肖| 什么笑脸| 乳腺结节三级是什么意思| 什么是roi| 身体皮肤痒是什么原因| 头大适合什么发型| 脖子变粗了是什么原因| 竹肠是什么部位| 胎儿左心室灶状强回声是什么意思| 什么东西越晒越湿| cnm是什么意思| 狗肉炖什么好吃| 男人说冷静一段时间是什么意思| 抽象是什么意思| 舌炎是什么症状| 什么是三好学生| 什么是淀粉| 痛风忌口不能吃什么东西| 与虎谋皮什么意思| 黄鳝吃什么东西长得快| 功是什么| 梦到前夫什么意思| 牙冠是什么意思| 鳞状上皮细胞是什么意思| 肾素活性高是什么原因| 加是什么生肖| 潼字五行属什么| 睡眠不好去医院挂什么科| 胃顶的难受是什么原因| 宫颈纳囊多发是什么意思| 睾丸癌是由什么引起的| 下午5点多是什么时辰| 不可漂白是什么意思| 醋酸生育酚是什么东西| 失聪什么意思| 米为什么会生虫| 甘油三酯高是什么| 宫腔内囊性结构是什么意思| 豆包是什么意思| 7月出生是什么星座| 一什么葡萄| 孕初期吃什么对胎儿好| 淋病是什么病| 安享晚年是什么意思| 厚黑学是什么意思| 百度
工业控制 | 能源技术 | 汽车电子 | 通信网络 | 安防监控 | 智能电网 | 移动手持 | 无线技术 | 家用电器 | 数字广播 | 消费电子 | 应用软件 | 其他方案

电路设计->基础电路图->数字电路图->ST-BUS总线接口模块的Verilog HDL设计

新闻聚焦--广西频道--人民网

发布人:张殊凡 时间:2025-08-06 收藏
百度 中共中央组织部党员教育和干部测评中心中共中央组织部党建研究所(党建研究杂志社)党建读物出版社中国组织人事报社人民网新华网2017年11月29日(责编:黄瑾、王金雪)

  摘 要: ST-BUS是广泛应用于E1通信设备内部的一种模块间通信总线。结合某专用通信系统E1接口转换板的设计,本文对ST-BUS总线进行了介绍,讨论了ST-BUS总线接口收发模块的设计方法,给出了Verilog HDL实现和模块的时序仿真图。

  关键词:ST-BUS;Verilog HDL;接口模块;E1;CPLD

  引言

  随着数字技术的迅速发展,现代通信系统已成为一个庞大的综合化数字网络。电信核心网络除了提供传统电话服务外,还为其它专用通信(比如警用集群通信等)提供中继服务。电信系统一般从交换机引出E1信号线路以供其它专用通信系统接入。为了满足电信网的接入规范,E1终端设备内部常采用一种被称为ST-BUS的总线来对需要接入通信网的各路用户数据进行排队,以便统一与E1信号进行转换,充分利用E1线路资源。由于批量生产的接口芯片都是针对某些特定标准接口而设计,无法满足E1通信的特殊需要。为满足多种特殊接口与电信线路间进行数据交换的需要,增加系统可重配置的灵活性,本文在所涉及项目中的E1接口转换板的设计中采用了可编程器件实现了多种特殊接口的混合接入。为了简化问题,文中主要介绍ST-BUS总线接口收发模块的Verilog HDL设计。

  ST-BUS基本原理

  ST-BUS(Serial Telecom BUS,串行通信总线)是卓联半导体公司根据电信应用的需要而定义的一种重要的通信设备内部总线通信协议,它可以将多路信息(包括音频、视频、控制信息以及其它数据等)进行复接或解复接,以便统一进行信号转换,实现本地设备与电信E1线路间的数据交换。随着通信系统越来越复杂,电信设备常有局部部件的淘汰或者更新换代。为了提高设备兼容性也便于系统升级,电信设备广泛采取了模块化设计方法,而ST-BUS就是将各功能模块连接起来协同工作的一种总线标准。所以,不论模块的功能和外部接口怎样,只要具备ST-BUS总线接口,都可以方便地嵌入到特定的通信系统中。

  根据卓联对ST-BUS的信号及时序规范所作的定义,ST-BUS是一种传输数字信息的高速同步串行通信总线,总线接口所需信号有帧同步信号、位时钟信号和串行数据信号。帧同步信号主要有类型0和类型1两种:类型0的同步脉冲仅出现在帧的开头,如图1所示,总线上各部件将之作为重要参考信号并由此决定何时开始接收或发送数据流;类型1的同步脉冲需要维持一个完整的时隙周期(即8个位时钟周期),在此期间部件也要接收或发送信息数据,这种同步方式较少应用。ST-BUS定义了4种标准时钟频率,即16.384MHz、8.192MHz、4.096MHz和2.048MHz,其中每一种时钟频率均可作为部件的内部时钟,不过任意时刻只能选择其一,自适应系统在设计时采用了自动选择模式。除频率2.048MHz外,其它时钟频率总是数据速率的两倍,即支持最大数据速率为8.192Mbps。如果ST-BUS数据速率为2.048Mbps,那么时钟可以是2.048MHz或4.096MHz。由图1可知,一个完整ST-BUS的帧周期为125ms,而每帧又根据数据速率分为几种不同的时隙总数。但是,为了与E1信号的时隙相对应,E1终端子系统常采用每帧32时隙的信号方式。

  ST-BUS收发模块设计与仿真

  为了实现ST-BUS总线与各种不同(总线)接口之间的可靠数据传输,下面讨论同步模式下ST-BUS接口模块的设计,并在部分Verilog HDL描述中以注解方式进行详细说明。根据ST-BUS总线协议,ST-BUS接口模块可大致分为接收模块、发送模块和控制模块(含数据交换)三部分,分别完成ST-BUS总线数据的接收、发送和控制(包括与其它接口单元进行数据交换)等功能。要实现某种特定接口(如RS-232等)与ST-BUS总线之间的数据通信,则需要将该接口单元的I/O信号及控制信号接到ST-BUS接口的控制模块,通过控制模块来控制收发时序以及在ST-BUS中所占用的时隙位置及数目,而在实际应用中,各路数据对应的时隙位置及数目常通过外部控制接口设置。为简化问题,这里仅讨论ST-BUS接口收发模块设计,且假定时隙设置是固定的。

  如图1所示,ST-BUS总线的数据收发遵守以下规则:发送端在时钟C2的上升沿发送,而接收端则在C2的下降沿采数据,且同步脉冲在0时隙开始的第一个C2上升沿处保持低电平。

  

740)this.width=740" border=undefined>

 

  图1 类型0帧同步ST-BUS总线信号时序

  ST-BUS接收模块

  ST-BUS接收模块主要根据控制模块所设置的ST-BUS时隙等参数接收所需时隙的数据,并将接收到的数据送给控制模块,其原理结构框图如图2(a)所示。

  

740)this.width=740" border=undefined>

 

  图2 ST-BUS收发模块的原理结构框图

  根据时钟等信号的提供方式,模块的工作模式常分为主动模式和被动模式两种。由于图2(a)所示的接收模块所需时钟与同步信号均来自外部,因此该模块处于被动模式;相反,如果时钟和同步信号由模块产生,则模块处于主动模式。

  被动模式下ST-BUS接收模块的基本工作原理为:上电后,在时钟稳定的情况下,模块首先检测同步信号;在非同步状态下,除同步检测以外的其它部件均不能工作;检测到同步后(即在同步状态下),模块启动时隙定位和数据位定位的计数器工作,此时,模块根据参数设置进行数据接收。另外,图2(a)中的时隙定位和数据位定位在本设计中采用2个计数器实现,也可以合并为单计数器实现。ST-BUS总线接收操作的关键之处在于前一帧的最后一时隙(即31时隙)与当前帧的第一时隙(即0时隙)之间的切换操作,因为需要同时检测同步信号,而一旦同步信号没有检测到,则模块会进入失步状态。接收模块的Verilog HDL实现(信号和常数声明从略,且代码已简化,下同)可以划分为以下三部分。

  (1)同步检测

  if(!f0) begin file://同步信号低电平有效

  f0_flag<=1; file://置同步标志

  bitcounter<=bitsofbyte-1;//时隙内的数据位数减法计数器复位

  bytecounter<=0; end

  file://时隙数加法计数器复位

  (2)定位计数

  if(f0_flag) file://判断同步状态

  begin case(bitcounter) file://根据数据位计数值进行时隙切换

  0:begin

  bitcounter<=bitsofbyte-1;

  file://数据位计数器复位

  bytecounter<=bytecounter+1;

  file://时隙通道计数器递增

  end

  default:bitcounter<=bitcounter-1; file://时隙内位计数器递减

  endcase end

  (3)接收数据(含标志及使能信号产生)

  if(bytecounter==byte_pos1) begin file://检查第1通道

  din2<=8'bZ;

  file://释放通道2暂存单元

  receive2_flag<=0;

  file://清除通道2接收标志

  din1<=din1<<1;

  file://移位准备接收下一位数据

  din1[0]<=dr; file://读入数据位

  if(bitcounter==0) begin receive1_flag<=1;end//接收完整通道数据置标志

  end

  else if(bytecounter==byte_pos2)

  file://多通道接收(同上)

  ……

  else begin

  file://当前通道不接收数据,则释放暂存单元并清除接收标志

  din1<=8'bZ;din2<=8'bZ;receive1 _flag<=0;receive2_flag<=0;end

  根据ST-BUS总线收发规则及接收模块基本工作原理,为了31时隙与0时隙的可靠切换,设计中采用状态转换与数据接收分开的方法,也即以上模块可由2个always语句实现,一个采用C2上升沿实现状态转换,一个采用C2下降沿实现数据接收。在Altera公司提供的Quartus II 5.0SP1集成开发环境下,利用MAX7000S系列最低性能的CPLD器件作综合后的时序仿真结果如图3(a)所示。图中第一通道为0时隙,第二通道为31时隙。

  

740)this.width=740" border=undefined>

 

  a)ST-BUS接收模块仿真

  

740)this.width=740" border=undefined>

 

  b)ST-BUS发送模块仿真

  图3 ST-BUS收发模块综合后的时序仿真结果(C2时钟为10MHz)

  ST-BUS发送模块

  ST-BUS发送模块主要将控制模块送来的数据按照所设置的时隙进行发送,也就是将一般数据信号转换为ST-BUS总线信号,其原理结构框图如图2(b)所示。

  发送模块可工作于两种模式,即主动模式和被动模式。图中细的虚线部分(除去相应的实线部分)表示工作于主动模式的连接,此时,时钟和同步信号均由模块内部产生;若除去细的虚线部分,则模块工作于被动模式。在本文涉及的E1接口板设计中,系统采用了自动模式选择的工作方式。图中同步的作用,在主动模式时为同步发生,在被动模式时为同步检测。

  被动模式下ST-BUS发送模块的基本工作原理与接收模块类似,所不同之处在于数据传输方向相反。与接收模块一样,图2(b)中的时隙定位和数据位定位也可以合并采用单计数器实现。ST-BUS总线发送操作的关键之处也在于前一帧31时隙与当前帧0时隙之间的切换,因为需要同时检测同步信号,并且状态转换和总线数据加载都在C2上升沿完成。发送模块的Verilog HDL实现可划分为两部分,与接收模块划分不同,这里已把发送数据的操作嵌入到了同步检测和定位计数当中,当然也可严格按功能块划分。

  (1)同步检测及数据发送

  if(!f0) begin file://同步信号低电平有效

  f0_flag<=1;//同步状态标志

  bitcounter<=bitsofbyte-1;//位计数器复位

  bytecounter<=0; file://时隙计数器复位

  if(byte_pos1==0) file://通道1为时隙0,则开始发送数据

  begin dx<=data1[7]; file://先送高位到ST-BUS总线

  dout1<=data1<<1; file://移位准备下一位待发数据

  dout2<=data2;end file://准备下一通道待发数据

  else if(byte_pos2==0)//通道2为时隙0,则开始发送数据(同通道1)

  ……

  else dx<=1'bZ; end file://如果没有选择0时隙,则输出高阻,释放总线

  (2)定位计数及数据发送

  if(f0_flag) file://判断同步状态

  begin case(bitcounter)

  0:begin bitcounter<=bitsofbyte-1;//位计数器复位

  if(bytecounter==(bytes_per_frame-1)) bytecounter<=0;//时隙计数满则复位

  else bytecounter<=bytecounter +1;//时隙计数器递增

  if(bytecounter==byte_pos1-1)

  file://通道1发送数据

  begin dx<=dout1[7];

  file://发送数据的最高位

  dout1<=dout1<<1; end

  file://移位准备下一位待发数据

  else if(bytecounter==byte_pos2-1) file://通道2发送数据(同通道1)

  ……

  else dx<=1'bZ;end

  file://非占用通道则释放总线

  default:begin

  bitcounter<=bitcounter-1;

  file://位计数递减

  ……

  file://同前面通道1、通道2发送数据

  end endcase end

  根据ST-BUS总线收发规则及发送模块基本工作原理,发送模块各功能块均采用C2上升沿,或者采用C2下降沿转换状态而采用C2上升沿发送数据。对前者,以上发送模块可用1个或2个always语句完成;对后者,以上发送模块则至少需用2个always语句实现,并将数据发送从以上两部分中分离出来。采用类似接收模块的方法,对发送模块单独综合后作时序仿真,结果如图3(b)所示。值得注意的是,为了说明模块设计对于通道设置顺序的无关性,图中第一通道为31时隙,第二通道为0时隙。

  ST-BUS控制模块

  ST-BUS控制模块主要完成ST-BUS总线的收发控制与协调,同时也负责与外部接口的数据交换功能,这部分代码因涉密不再列出,这里仅简单介绍一下其功能。

  控制模块的功能划分大致分为以下5部分:外部接口时钟产生及管理,控制收发模块与控制模块的数据交换,控制接口模块与其它接口的数据交换,对速率不匹配的数据作缓存(FIFO),提供对外通信接口供用户设置参数。根据实际应用情况,以上所列的功能可以适当取舍或调整。如果速率匹配,则可以舍弃第4部分;如果参数固化,则可舍弃第5部分。

  结语

  基于MAX7000S系列CPLD器件分析收发模块的最高工作性能可知,接收模块的位时钟C2最高工作频率可达21.74MHz,而发送模块的位时钟C2最高工作频率则达到32.26MHz,完全符合设计要求。本文所设计的ST-BUS接口模块具有很强的通用性、可扩展性和可移植性,利用MAX7000S系列CPLD器件成功实现了ST-BUS与UART、RS-232、RS-485等接口单元的顺利对接,并已成功应用于某专用集群通信设备的E1接口板,完成了多路不同接口的数据复接通信,运行状况良好。



评论

技术专区

世界大同是什么意思 长期失眠吃什么药好 4月28日什么星座 樵是什么意思 狗狗窝咳吃什么药最好
助听器什么牌子的好 红斑狼疮有什么症状 总是爱出汗是什么原因 老鹰的绝症是什么 医院归什么部门管理
吃什么食物补钙 十二星座什么第一名 羊水多是什么原因造成的 泛化是什么意思 梦见吃杨梅是什么意思
为什么会打鼾 什么是碳水化合物食物 半斤八两什么意思 7.14日是什么日子 廉洁奉公是什么意思
年上是什么意思hcv9jop5ns3r.cn 事业单位是指什么hcv9jop2ns5r.cn 什么是前置胎盘hcv7jop9ns0r.cn abo是什么意思hcv9jop5ns9r.cn 抢七是什么意思jingluanji.com
为什么会尿床hcv7jop4ns6r.cn 治前列腺炎吃什么药效果最好hcv9jop3ns3r.cn 疝外科是治什么病的hcv8jop7ns8r.cn 158是什么意思bfb118.com 结婚20年是什么婚hcv9jop6ns9r.cn
什么样的雨珠hcv9jop8ns1r.cn 飞蚊症用什么药hcv8jop6ns1r.cn 左耳朵痒代表什么预兆hcv9jop6ns9r.cn 上皮内低度病变是什么意思hcv9jop2ns8r.cn 结婚6年是什么婚hcv9jop0ns7r.cn
左侧附件区囊性回声是什么意思hcv7jop6ns0r.cn 隐翅虫长什么样hcv9jop2ns1r.cn 抽烟为什么会头晕hcv8jop7ns0r.cn 憩室是什么病hcv8jop8ns5r.cn 枯木逢春是什么生肖bfb118.com
百度