001. 画出CMOS反相器的电路原理图。

衬底的连接问题。PMOS衬底接电源,NMOS衬底接地

002. 反相器的速度与哪些因素有关?什么是转换时间(transition time)和传播延迟(propagation delay)?

反相器的速度与哪些因素有关。

(1)  电容(负载电容、自载电容、连线电容)较小,漏端扩散区的面积应尽可能小。输入电容要考虑: (1)Cgs 随栅压而变化(2)密勒效应(3)自举效应

(2)   加大晶体管的尺寸(驱动能力),使晶体管的等效导通电阻(输出电阻)较小。但这同时加大自载电容和负载电容(下一级晶体管的输入电容)。

(3)   提高电源电压,提高电源电压可以降低延时,即用功耗换取性能但超过一定程度后改善有限。电压过高会引起可靠性问题(氧化层击穿、热电子等)。

Transition Time(转换时间):上升时间:从10%Vdd上升到90%Vdd的时间,下降时间L从90%Vdd下降到10%dd的时间。上升时间和下降时间统称为Transition Time,也有定义为20%到80%。

Propagation Delay(传播延时):在输入信号变化到50%Vdd到输出信号变化到50%Vdd之间的时间。

结合fpga的时序报告,介绍一下这些参数在工程实际中有啥用处呢

003. 解释一下Vih,Vil,Vol,Voh,Vt。

Vih:输入电压由高到低变化时,输出电压开始上升且传输特性曲线斜率为-1的点,即图中B点对应的输入电压。(仍能维持输出为逻辑“1”的最大输出电压)

Vil:输入电压由低到高变化时,输出电压开始下降且传输特性曲线斜率为-1的点,即图中A点对应的输入电压。(仍能维持输出为逻辑“0”的最小输出电压)

Voh:定义为最小合格高电平。(维持输出为逻辑“1”的最大输出电压)

Vol:定义为最大合格低电平。(维持输出为逻辑“0”的最大输出电压)

CMOS集成电路内部规定Vol = 0v,Voh = Vdd。

Vt:MOS管的阈值电压

如果输入电平是(Vil+Vih)/2,会有什么问题

输入电压(Vil+Vih)/2接近于0.5Vdd,CMOS反相器的阈值电压也接近于0.5Vdd,这样输出不确定会是高电平还是低电平,输出呈亚稳态!

004.什么是原码,反码,补码,符号-数值码。以4bit为例,给出各自表示的数值范围。

原码:符号位+真值,最高位表示符号位,以4bit为例。

[+3]原 = 0011

[-3]原 = 1011

表示范围:-7到+7

原码中0000和1000都表示0。

反码:正数的反码是它本身,负数的反码将原码除符号位外逐位取反。以4bit为例。

[+3]原 = [0011]原 = [0011]反

[-3]原 = [1011]原 = [1100]反

表示范围:-7到+7

反码中0000和1111都表示0。

补码:正数的补码是它本身,负数的补码将原码除符号位外逐位取反再加1。以4bit为例。

[+3]原 = [0011]原 = [0011]反 = [0011]补

[-3]原 = [1011]原 = [1100]反 = [1101]补

表示范围:-8到+7

补码中0的表示只有一种形式,即0000,1000表示-8。

以上是有符号数,对于无符号数来说都是来表示整数,其原码、反码、补码都是其本身。

更详细解释可参考维基百科。

https://zh.wikipedia.org/wiki/%E6%9C%89%E7%AC%A6%E8%99%9F%E6%95%B8%E8%99%95%E7%90%86

005.十进制转换为二进制编码:

127

-127

127.375

-127.375

十进制数转化为R进制数:整数部分,除R取余法,除到商为0为止。小数部分,乘R取整法,乘到积为0为止。

127 = 0111_1111

-127 = 1111_1111

127.375 = 0111_1111.011

-127.375 = 1111_1111.011

006.画出CMOS三态缓冲器的电路原理图,解释一下高阻态。

  很多东西去搜索还是应该直接用英文,用Google或者Bing国际版,百度真是惨不忍睹。

PMOS衬底接Vdd,CMOS衬底解Gnd,以下为简化,未画衬底。

图1,三态非门,当~EN为1时,最上面的PMOS和最下面的NMOS管截止,所以输出为高阻态,反之输出为~A,同理可推理出图2,EN高电平有效输出。

图3,三态缓冲门,当~EN为高电平时,最上面的PMOS管截止,输出为高阻态,反之,输出为A。图4一样。

图5,CMOS传输门,双向传输,当C=0,~C=Vdd,两个MOS管都截止,输入和输出之间呈现高阻态,当C=Vdd,~C=0,如果0 <= Vi <= Vdd – Vt(NMOS),NMOS管导通,如果|Vt(PMOS)|<= Vi <= Vdd,PMOS管导通,所以Vi在0到Vdd之间,总有一个MOS管导通,实现传输门。

图6,三态非门,在反相器后面加一个传输门,当~EN为低电平,传输门导通,输出Y = ~A,反之传输门截止,输出高阻态。如果想要EN高电平有效,交换传输门上下端子的反相器即可。

  高阻态:电路的一种输出状态,既不是高电平也不是低电平,如果高阻态再输入下一级电路的话,对下级电路无任何影响,可以理解为断路,不被任何东西所驱动,也不驱动任何东西

007.什么是open-drain output?

  Open-Drain Output漏极开路输出,称为OD门,两个OD门并联可以实现线与功能,输出端外接的上拉电阻提高驱动能力

008.只用2输入mux,实现与,或,非,异或。2输入mux定义为o = s ? a : b;

与:out = (a == 1'b0)? 1'b0: ((b == 1'b0)? 1'b0: 1'b1);

改进版:out = (a == 1'b1)? b: 1'b0;

或:out = (a == 1'b1)? 1'b1: ((b == 1'b1)? 1'b1: 1'b0);

改进版:out = (a == 1'b0)? b: 1'b1;

非:out = (a == 1'b1)? 1'b0: 1'b1;

异或:out = (a == 1'b1)? ((b == 1'b1)? 1'b0: 1'b1) : ((b == 1'b0)? 1'b0: 1'b1);

009.相同面积的cmos与非门和或非门哪个更快?

   数集学的不够深刻,需要慢慢体会。

  电子迁移率是空穴的2.5倍(在硅基CMOS工艺中),运算就是用这些大大小小的MOS管驱动后一级的负载电容,翻转速度和负载大小一级前级驱动能力相关。为了上升延迟和下降延迟相同,PMOS需要做成NMOS两倍多大小。

  载流子的迁移率,对PMOS而言,载流子是空穴;对NMOS而言,载流子是电子。

  PMOS采用空穴导电,NMOS采用电子导电,由于PMOS的载流子的迁移率比NMOS的迁移率小,所以,同样尺寸条件下,PMOS的充电时间要大于NMOS的充电时间长,在互补CMOS电路中,与非门是PMOS管并联,NMOS管串联,而或非门正好相反,所以,同样尺寸条件下,与非门的速度快,所以,在互补CMOS电路中,优先选择与非门。

转载请注明出处:NingHeChuan(宁河川)

个人微信订阅号:硅农

如果你想及时收到个人撰写的博文推送,可以扫描左边二维码(或者长按识别二维码)关注个人微信订阅号

知乎ID:NingHeChuan

微博ID:NingHeChuan

原文地址:https://www.cnblogs.com/ninghechuan/p/9938802.html

Verilog 99题之001-009的更多相关文章

  1. Leetcode刷题第001天

    一.合并两个有序链表 [题目]206. 反转链表 /** * Definition for singly-linked list. * struct ListNode { * int val; * L ...

  2. 字节跳动Java研发面试99题(含答案):JVM+Spring+MySQL+线程池+锁

    JVM的内存结构 根据 JVM 规范,JVM 内存共分为虚拟机栈.堆.方法区.程序计数器.本地方法栈五个部分. 1. Java虚拟机栈:线程私有:每个方法在执行的时候会创建一个栈帧,存储了局部变量表, ...

  3. ACM刷题常用链接

    武汉科技大学  http://acm.wust.edu.cn/ 华中科技大学 http://acm.hust.edu.cn/vjudge/toIndex.action 杭州电子科技大学  http:/ ...

  4. LeetCode算法题-Find All Numbers Disappeared in an Array(Java实现)

    这是悦乐书的第232次更新,第245篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第99题(顺位题号是448).给定一个整数数组,其中1≤a[i]≤n(n =数组的大小) ...

  5. 1、学习算法和刷题的框架思维——Go版

    前情提示:Go语言学习者.本文参考https://labuladong.gitee.io/algo,代码自己参考抒写,若有不妥之处,感谢指正 关于golang算法文章,为了便于下载和整理,都已开源放在 ...

  6. JMH使用说明

    JMH使用说明 一.概述 JMH,即Java Microbenchmark Harness,是专门用于代码微基准测试的工具套件.何谓Micro Benchmark呢?简单的来说就是基于方法层面的基准测 ...

  7. 用C++实现的数独解题程序 SudokuSolver 2.2 及实例分析

    SudokuSolver 2.2 程序实现 根据 用C++实现的数独解题程序 SudokuSolver 2.1 及实例分析 里分析,对 2.1 版做了一些改进和尝试. CQuizDealer 类声明部 ...

  8. 理解 OpenStack 高可用(HA)(1):OpenStack 高可用和灾备方案 [OpenStack HA and DR]

    本系列会分析OpenStack 的高可用性(HA)概念和解决方案: (1)OpenStack 高可用方案概述 (2)Neutron L3 Agent HA - VRRP (虚拟路由冗余协议) (3)N ...

  9. [SQL入门级] 第一天 SQL初步

    SQL语句分为以下三种类型: DML:Data Manipulation Language 数据操纵语言 INSERT UPDATE DELETE SELECT DDL:Data Definition ...

随机推荐

  1. 5I - 汉诺塔IV

    还记得汉诺塔III吗?他的规则是这样的:不允许直接从最左(右)边移到最右(左)边(每次移动一定是移到中间杆或从中间移出),也不允许大盘放到小盘的上面.xhd在想如果我们允许最大的盘子放到最上面会怎么样 ...

  2. 在电脑上查看小米手机连接wifi时保存的密码

    手机连接的wifi,想另一个手机也连上,密码忘了. 先备份手机的资料,然后将手机连上电脑,在SD卡上MIUI-backup-allbackup文件夹中, 找到刚才备份的文件夹 点进去找到WLAN设置. ...

  3. Git二进制文件冲突解决

    Git二进制文件冲突解决 在我们合并分支的时候,如果两个分支都进行了修改那么就会产生合并冲突.对于非二进制文件的冲突解决,git会给出冲突的位置我们可以手动修改然后再commit.但是对于非二进制文件 ...

  4. windows下git的使用方法(码云)

    这表文章主要是用了可视化操作: 使用命令行操作:https://www.cnblogs.com/mswyf/p/9370238.html 一.安装Git Bash 为了在windows下使用Git,我 ...

  5. NOIP需要掌握的内容(大致

    1.排序算法(快排.选择.冒泡.堆排序.二叉排序树.桶排序)2.DFS/BFS 剪枝 哈希表3.树   ①遍历   ②二叉树   ③二叉排序树(查找.生成.删除)   ④堆(二叉堆.左偏树.堆排序)  ...

  6. vc项目中加载多个lib遇到的问题

    一个VC项目中 在网络加密 json解析等方面  加载了多个第三方库和文件 boost cryptpp rapidjson  mysql的连接池等等 在使用mysql++的时候 多次报错 LNK 20 ...

  7. IOS初级:UIScrollView & UIPageControl

    UIScrollView其实构建的就像一列很长的火车,每滑动一个屏幕,展示一节车厢. //主屏幕高度 #define kScreenHeight [UIScreen mainScreen].bound ...

  8. 2017/2/24:Maven的pom jar war的区别

    首先,Run ——> Edit Configurations,这时候如下图: 然后点击左上角的加号,可以添加一个新的配置,如下图: 选择Maven,如下图: 下面填上自己的配置信息,点击appl ...

  9. 【转载】 Jointwave零延时视频传输for FPGA/ASIC进入军工领域

    半导体知识产权H.264/H.265 硅IP核供应商Jointwave公司的发布了一系列视频编解码RTL IP核,已经成功应用于军事工业领域的指挥作战,无人机UAV控制,航空和航天摄像机,视频记录黑匣 ...

  10. Android——编译release版签名系统

    http://blog.csdn.net/jscese/article/details/24243171 在我的第一篇博客里面http://blog.csdn.net/jscese/article/d ...