5.振荡器
如图1-56所示电路可产生方波振荡,图1-57是其工作波形,B点高电平时,通过R对C充电,C点电平因电容充电而升高,升高至VCC/2时,B点下跳,Y点上跳,C点达到3VCC/2,而后C通过R放电,C点电压下降至VCC/2时,B点上跳完成一个周期。电
路中R一般取10kΩ至数百kΩ。
图1-58所示电路使用晶振选频,非门作为放大器,实现高稳定和较准确频率的振荡,非门的延时、R2和C2网络提供的额外延时,使得电路处于正反馈状态,形成振荡
在实际应用中,R2和C2需根据振荡频率和非门的延迟来确定,应使整个环路延迟(含非逻辑的180°)约为振荡周期,如果振荡周期很小,还可将R2替换为与C2值接近的电容。
1.5 逻辑代数
逻辑代数是分析和设计逻辑电路的数学工具,在FPGA应用设计中,很多需要应用逻辑代数的设计过程EDA工具会帮助我们,因此读者不必将逻辑代数及其化简方法掌握到非常熟练,但对相关概念、基本定律和特性还是必须了解的。
1.5.1 基本定律
因为逻辑变量只能取0和1两个值,逻辑代数有很多规律和普通代数不同,不过逻辑代数和集合运算有很多相似之处。
逻辑代数运算符的优先级由高到低依次是:非、与、或,有括号的式子中,括号优先级最高。
逻辑代数的基本定律如下:
如需证明这些定律,列出真值表即可。
上面的式子中,除了非非律之外,其他的都是上下两两成对出现的。可以看出,上下成对的式子都是将式子中的与变或、或变与,0变1、1变0得到的,它们互为“对偶式”。求对偶式时一定要注意添加括号来保持原来计算的优先级。对于任何一个逻辑代数恒等式,其等号左右两侧式子的对偶式也是恒等的。
上述0-1律中的四列,有时又细称为:“自等律”、“0-1律”、“重叠律”和“互补律”。
反演律也可以表述为:将一个逻辑表达式中的与变或、或变与、变量和常量取反,得到的新式子将与原式子互反。例如:
第一步运用了A+B=A·B和C+D=C·D,第二步则将A·B和C·D作为整体运用反演律。事实上我们自小学语文开始就知道反演律了,最简单的例子是:“偷吃苹果的不是小明或小红”(小明+小红)等价于“偷吃苹果的既不是小明也不是小红”(小明·小红)。
1.5.2 表达式的代数化简法
利用上一节的公式,可对复杂的逻辑表达式化简。逻辑表达式化简的目标一般是使得化简后的式子具有最少的基本逻辑运算,但根据实际实现逻辑电路的器件的类型也有不同的标准,例如,“与非-与非”式可使电路完全由与非门构成,“或非-或非”式可使电路完全由或非门构成,“与-或”式书写最简明。所谓“与-或”式是指所有输入变量(或其反变量)首先相与,而后与的结果(乘积项)再相或。
考虑以下逻辑表达式:
其中,第一行即“与-或”式,第二、三行分别是“与非-与非”和“或非-或非”式。