Friday, September 1, 2017

Building Blocks for Digital Architectures



content:
+Arithmetic unit( đơn vị số học)
+Memory(bộ nhớ)
+Control(điều khiển)
+Interconnect(liên kết nội)

giới thiệu: bản chất của việc thiết kế là tạo ra các đường dữ liệu được xây dựng dựa trên các building block cơ bản và được điều khiển bởi các mạch control. và để hiểu rõ hơn thì chúng ta sẽ đi vào tìm hiểu chi tiết như thế nào

block diagram chung  cho một bộ xử lý số như hình dưới:



1.Arithmetic unit( đơn vị số học)
- Bit-sliced datapath :
      +adder
      +multiplier
      +shifter
      +comparator
      + ...
*adder design:

+half adder

+full adder
mạch full adder được xây dựng từ mạch half adder:

+Carry Propagate Adder


+Ripple-Carry Adder



+Carry-Lookahead Adder
Gi = AiBi 
Pi = Ai + Bi
Ci = AiBi +(Ai + Bi)Ci1 = Gi + PiCi1


trong thiết kế số thì ta dùng kí hiệu chung cho tất cả các mạch cộng như sau:

*subtraction

*comparator 




*division
Binary division can be performed using the following algorithm for N-bit
unsigned numbers in the range [0, 2
N-1]:R= 0
for i
= N-1 to 0
R
= {R<< 1, Ai}
D
= R - B
if D < 0 then Q
i = 0, R= R // R < B
else Q
i = 1, R= D // R B
R
= RThe partial remainder R is initialized to 0. The most significant bit of the
dividend
A then becomes the least significant bit of R. The divisor B is
repeatedly subtracted from this partial remainder to determine whether
it fits. If the difference
D is negative (i.e., the sign bit of D is 1), then  the quotient bit Qi is 0 and the difference is discarded. Otherwise, Qi is 1,
and the partial remainder is updated to be the difference. In any event, the
partial remainder is then doubled (left-shifted by one column), the next
most significant bit of
A becomes the least significant bit of R, and the
process repeats. The result satisfies
A B =Q + R B.Figure 5.20 shows a schematic of a 4-bit array divider. The divider
computes
A/B and produces a quotient Q and a remainder R. The legend
shows the symbol and schematic for each block in the array divider. The
signal
N indicates whether R - B is negative. It is obtained from the D output of the leftmost block in the row, which is the sign of the difference.
The delay of an
N-bit array divider increases proportionally to N2because the carry must ripple through all N stages in a row before the sign
is determined and the multiplexer selects
R or D. This repeats for allN rows. Division is a slow and expensive operation in hardware and
therefore should be used as infrequently as possible.
 


*shifter

*Multiplier:

*ALU

An Arithmetic/Logical Unit (ALU) combines a variety of mathematical
and logical operations into a single unit. For example, a typical ALU
might perform addition, subtraction, magnitude comparison, AND, and
OR operations. The ALU forms the heart of most computer systems.
  




2.Memory
- RAM
- ROM
- Buffers
-Shift registers
- ...
xem tại đây:http://vuongbkdn.blogspot.com/2017/08/memorry-and-array-cicuits.html

3.Control
- Finite state machine (PLA, random logic.)
- Counters

4.Interconnect
- Switches: các chuyển mạch
- Arbiters:
- Bus: các đường trao đổi dữ liệu 



mình sẽ tiếp tục update ...
mong các bạn thông cảm .








Share:

0 comments:

Post a Comment

Search This Blog

Powered by Blogger.

Blog Archive