热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

层次电路原理图的设计

层次电路原理图的设计是为了在某些元件非常复杂的情况下进行模块化的设计方法,可以让原理图非常的清晰。一般有两种设计方法:自上而下设计、自下而上设计。所谓的自上而下设计是指先设计好模块

层次电路原理图的设计是为了在某些元件非常复杂的情况下进行模块化的设计方法,可以让原理图非常的清晰。一般有两种设计方法:自上而下设计、自下而上设计。
所谓的自上而下设计是指先设计好模块化后的封装器件,再设计该器件具体的电路;反之,自下而上的设计方法就是先设计好每个模块的原理图,再将每个模块的原理图进行生成器件的操作。
个人更倾向于后者,因为具体的原理图电路往往是自己设计过的,很多时候可以直接拿现成的用,在经过考虑之后设计每个模块的电路后,确定每个模块的输出输入端口即可。
首先介绍下模块化原理图是怎样的,我这里以图1举例。
《层次电路原理图的设计》

可以看到图1所示有四个模块,每个模块之间都有输入输出或者是双向的端口,通过这个端口就可以实现数据信号的交换。
这里说明两种情况,也就是我们如果是自上而下的设计方法,那么我们设计好了这个总图之后就可以设计每个模块中具体的电路图了。这里可以选择:设计——>产生图纸这个选项,选择你要产生图纸的模块即可,产生的图纸中会自动生成该模块里已经设计好的端口。另外要说明的就是这个绿色模块我们称之为图表符,可以直接找到放置一下即可;这个黄色的端口,称之为图纸入口,同样找到之后放置即可,该入口的方向则是自己根据模块信号的情况进行具体分析,这里不再赘述。
之后,我们就可以设计对应模块的具体电路了,这里我以图2为例,举个例子。
《层次电路原理图的设计》

可以看到这是整体的控制电路,与平常设计的不同是这里多了许多的端口,也就是port,这也是可以直接找到的,可以自己设置名称和输入输出。具体接口的电路如图3所示。
《层次电路原理图的设计》
我把所有的接口都放在了一起,这样子的好处就是可以很清晰的看到,哪些是输入输出。按照这样的操作设计好之后,对整个工程进行编译即可出现总图纸下包含多个子图纸的情况,如图4所示。
《层次电路原理图的设计》

但是在编译的过程中可以发现会报错。报错的具体内容就是说,重复定义了线的名称,也就是相同的端口或者网络标识被多次使用并产生了多条在不同图纸的线。这种情况一般是不需要理会的,我直接将该错误改成了警告,之后PCB画图的时候相关的网络没有问题即可。具体修改的地方如图5所示。
《层次电路原理图的设计》
该页面是在:工程——>工程参数——>Error Reporting里面。
至此,自上而下的设计流程就结束了,如果自下而上设计的话,只要在设计好每一个子图之后,新建一个原理图,在新的原理图里选择:设计——>HDL文件或图纸生成图表符即可。生成的图表符自带图纸入口的,蛮方便。


推荐阅读
  • 本文将详细介绍如何配置并整合MVP架构、Retrofit网络请求库、Dagger2依赖注入框架以及RxAndroid响应式编程库,构建高效、模块化的Android应用。 ... [详细]
  • 使用R语言进行Foodmart数据的关联规则分析与可视化
    本文探讨了如何利用R语言中的arules和arulesViz包对Foodmart数据集进行关联规则的挖掘与可视化。文章首先介绍了数据集的基本情况,然后逐步展示了如何进行数据预处理、规则挖掘及结果的图形化呈现。 ... [详细]
  • 本文详细介绍了Socket在Linux内核中的实现机制,包括基本的Socket结构、协议操作集以及不同协议下的具体实现。通过这些内容,读者可以更好地理解Socket的工作原理。 ... [详细]
  • Linux内核中的内存反碎片技术解析
    本文深入探讨了Linux内核中实现的内存反碎片技术,包括其历史发展、关键概念如虚拟可移动区域以及具体的内存碎片整理策略。旨在为开发者提供全面的技术理解。 ... [详细]
  • 本文详细探讨了在Windows 98环境下安装Apache 1.3.9、JServ、GNUJSP 1.0、JDK 1.2.2及JSDK 2.0后遇到的中文显示问题,并提供了多种有效的解决方案。 ... [详细]
  • 如何高效学习鸿蒙操作系统:开发者指南
    本文探讨了开发者如何更有效地学习鸿蒙操作系统,提供了来自行业专家的建议,包括系统化学习方法、职业规划建议以及具体的开发技巧。 ... [详细]
  • C/C++ 应用程序的安装与卸载解决方案
    本文介绍了如何使用Inno Setup来创建C/C++应用程序的安装程序,包括自动检测并安装所需的运行库,确保应用能够顺利安装和卸载。 ... [详细]
  • 本文分享了作者在使用LaTeX过程中的几点心得,涵盖了从文档编辑、代码高亮、图形绘制到3D模型展示等多个方面的内容。适合希望深入了解LaTeX高级功能的用户。 ... [详细]
  • 本文介绍了Tomcat的基本操作,包括启动、关闭及首次访问的方法,并详细讲解了如何在IDEA中创建Web项目,配置Servlet及其映射,以及如何将项目部署到Tomcat。 ... [详细]
  • 本文档旨在提供C语言的基础知识概述,涵盖常量、变量、数据类型、控制结构及函数定义等内容。特别强调了常量的不同类型及其在程序中的应用,以及如何正确声明和使用函数。 ... [详细]
  • 如何为PDF文档添加水印?简单步骤实现
    为了增强PDF文档的安全性和版权保护,添加水印是一个有效的方法。本文将介绍如何通过专业软件或在线工具轻松为PDF文档添加水印,确保您的文档在共享时仍能保持其独特性和安全性。 ... [详细]
  • 分布式计算助力链力实现毫秒级安全响应,确保100%数据准确性
    随着分布式计算技术的发展,其在数据存储、文件传输、在线视频、社交平台及去中心化金融等多个领域的应用日益广泛。国际知名企业如Firefox、Google、Opera、Netflix、OpenBazaar等均已采用该技术,推动了技术创新和服务升级。 ... [详细]
  • 本文详细介绍了在PHP中如何获取和处理HTTP头部信息,包括通过cURL获取请求头信息、使用header函数发送响应头以及获取客户端HTTP头部的方法。同时,还探讨了PHP中$_SERVER变量的使用,以获取客户端和服务器的相关信息。 ... [详细]
  • 本文详细介绍了如何在PHP中使用Memcached进行数据缓存,包括服务器连接、数据操作、高级功能等。 ... [详细]
  • 【MySQL】frm文件解析
    官网说明:http:dev.mysql.comdocinternalsenfrm-file-format.htmlfrm是MySQL表结构定义文件,通常frm文件是不会损坏的,但是如果 ... [详细]
author-avatar
天空的鸟儿飞
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有