2011年5月6日 星期五

100.5.3數位邏輯設計

電腦的硬體元件是由邏輯電路(logic circuit)所組成,而邏輯電路是由可以完成
某些功能的邏輯匣logic gate)所組成,邏輯匣可以接受一個或多個輸入訊號,
然後產生一個或多個輸出訊號,至於邏輯電路的分析與設計則是透過布林代數
boolean algebra)。
例子:
這是兩個二元變數XY進行相加的結果,SUM代表和,CARRY代表進位:


上圖為真值表:
1.AND運算子:通常以‧或 *來表示AND運算子,F為布林函數,
FX,Y)=XYFX,Y)=X * YFX,Y)=XY
=>只有2個運算元均為1,結果是1,其他情況為0
2.OR 運算子:通常以 + 來表OR 運算子,F為布林函數,
  FX,Y)=XY
=>只有2個運算元均為0,結果是0,其他情況為1
3.NOT運算子:通常以′來表NOT運算子,F為布林函數,
  FX)=X
=>為該運算元的補數,當運算元為1則結果為0,當運算元為0則結果為1
範例:
FX,Y,Z)=XY+(X+Z’)(YZ) 且X=1Y=1Z=0 求布林函數值
          XYZ+(X+ Z’)(YZ
          111+(01)(1+0
          101
          1+0
          1
※布林函數恆等式可參考書本P6-8
邏輯簡化:透過布林代數運算或卡諾圖將布林函數簡化。
1.積項:兩個或以上個二元變數以AND運算子連接在一起,例如XYXYZ’、YZ
2.和項:兩個或以上個二元變數以OR運算子連接在一起,例如X + YX + Y + Z’、Y + Z
3.最小項:積項中每個二元變數均要出現一次,例如有XYZ三個變數,那麼XYZXYZ’ 等積項均屬於最小項。
4.最大項:和項中每個二元變數均要出現一次,例如有XYZ三個變數,那麼X + Y + ZX + Y + Z’ 等和項均屬於最大項。
5.積項之和:以OR運算子連接各個積項,例如XY + XYZ + YZ
6.和項之積:以AND運算子連接各個和項,例如 (X + Y)(X + Y + Z)
7.最小項之和:意義與積項之和相似,不同的是以OR運算子連接各個最小項,例如XYZ + XYZ + XYZ’ 。
8.最大項之積:意義與和項之積相似,不同的是以AND運算子連接各個最大項,例如 (X + Y + Z)(X + Y + Z)(X + Y + Z)

卡諾圖:用來進行邏輯簡化的另一種表示法。
(一)包含2個二元變數的卡諾圖
    






F(X, Y) = XY + XY’ 簡化為積項之和:
  1.F(X, Y) = m3 + m2 = Σm(2, 3)

  2.XY + XY = (X)(Y + Y) = X
(二)包含3個二元變數的卡諾圖





F(X, Y, Z) = XYZ + XYZ + XYZ + XYZ簡化為積項之和:
  1. F(X, Y, Z) = m2 + m3 + m5 + m7 = Σm(2, 3, 5, 7)

 




  2.XYZ + XYZ+ XYZ + XYZ = (XY)(Z + Z) + XZ(Y + Y) = XY + XZ

沒有留言:

張貼留言