Download miễn phí Đề tài Cấu trúc của FPU
Trường điều khiển độ chính xác (PC)( bits 8-9) của từ điều khiển FPU ) sẽ quyết định độ chính xác (64,53,24 bits) của việc phép toán dấu phẩy động thực hiện bởi FPU ( bảng 1-4), đọ chính xác ngẫu nhiên là chính xác mở rộng ,nó sử dụng đủ 64 bits significand có hiệu lực với các định dạng mở rộng cảu thanh ghi dữ liệu FPU nhưng cũng có thể cấu đặt cấu hình bởi người sử dụng , trình biên dịch hay hệ diều hành .Thiết lập này là phù hợp nhất cho hầu hết úng dụng bởi vì nó cho phép các úng dụng mang đến đầy đủ sự thuận tiện cuả đọ chính xác của định dạng số thực mở rộng
http://cloud.liketly.com/flash/edoc/jh2i1fkjb33wa7b577g9lou48iyvfkz6-swf-2014-01-17-de_tai_cau_truc_cua_fpu.FXxEFs3eYj.swf /tai-lieu/de-tai-ung-dung-tren-liketly-55097/
Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí
Tóm tắt nội dung tài liệu:
hen real numbers become very close to zero, the normalized-number format can no longer be sự dịch chuyển của giá trị nhị phân compensate for shifting the binary point to the right to eliminate leading zeros. để mà loại chính xác số 0 ở đầu.Khi mà biased Exponent là 0 ,những số nhỏ chỉ có thể biểu diễn bằng cách tạo ra các bit nguyên (có thể các bit dầu khác) của sigificand zero.những số này trong khoảng nói trên
được gọi là số không bình thường (hay rất nhỏ) việc sử dụng số 0 ở đầu với các số không bìng thường cho phép ta biểu diễn các số nhỏ hơn . tuy nhiên thì những số không bình thường này là nguyên nhân gây ra việc mất đi tính chính xác (số bít ý nghĩa trong phần phân số được giảm đi bằng các số 0 ở đầu )
Khi thực hiện việc tính toán dấu chấm động không bình thường ,1 con FPU bình thường thao tác trong các số bình thường và đưa ra kết quả là 1 số bình thường .số không bình thường biểu diễn 1 điều kiện underflow.
1 số không bình thường được tính toán thong qua công nghệ gọi là uunderflow từ từ .(bảng 7-2) ở đây định dạng số thực đơn thì được sử dụng vì thế mà số mũ nhỏ nhất (unbiased) là -12610 kết qủa chính xác trong vd này đòi hỏi một số mũ -12910 trong lệnh mà có 1 số bình thường ,khi đó -12910 nằm ngoài phạm vi mà số mũ cho phép,kết quả không bình thường có được bằng cách thêm vào số 0 ở đầu đến khi nào mà sỗ mũ là nhỏ nhất đến - 12910
Trong trường hợp tốt nhất thì tất cả các bit có nghĩa đều được thay đổi 1 cách chính xác các số 0 ở đầu, nó sẽ tạo ra một kết quả là 0.
khối FPU xử lý với giá trị hệ đếm cơ số 10 theo các cách sau:
• Nó không cho phép việc tạo ra 1 cách không bình thường bằng cách bình thường hoá các số bất cứ lúc nào có thể.
•Nó cung cấp các ngoại lệ underlow dấu chấm động để mà cho phép người lập trình kiểm tra các trường hợp khi mà các việc không bình thường được tạo ra.
•Nó cũng cung cấp các toán hạng ngoại lệ không bình thường dấu chấm động để mà cho phép các thủ tục chương trình kiểm tra khi mà các việc không bình thường được sử dụng như là toán hạng nguồn dành cho việc tính toán .khi một số không bình thường ở định dạng số thực đơn hoăc kép được sử dụng như là toán hạng nguồn và những ngoại lệ không bình thường này bị che giấu đi,FPU sẽ tự động bình thường hoá các số khi mà nó chuyển các định dạng số thực mở rộng
1.2.3.3. SIGNED INFINITIES
Có 2 vô cùng là âm vô cùng và dương vô cùng dung để biểu diễn số thực âm nhỏ nhất và số thực dương lớn nhất,vì thế mà có thể biểu diễn trong định dạng dấu chấm động .vô cùng luôn được biểu diễn bởi một zerosignificand( phấn số và bít số nguyên) và biased exponent cho phép chỉ ra định dạng (vd: 25510 ch định dạng số thực đơn )
dấu của vô cùng là đối tượng và có thể dung để so sánh .Vô cùng luôn là được chỉ rõ có nghĩa là âm vô cùng thì nhỏ hơn bất kỳ số thực cụ thể nào còn dương vô cùng thì luôn là lớn nhất .việc (tính toán trên vô cùng luôn là chính xác) .ngoại lệ này chỉ sinh ra khi mà việc sử dụng một số vô cùng như là 1 toán hạng nguồn tạo thành một thao tác không hợp lệ
khi mà số không bình thường biểu diễn một điều kiện underflow, 2 số vô cùng biểu diễn kết quả của 1 điều kiện overflow . Đây là kết qủa được bình thường hoá của 1 phép toán có một biased exponent lớn hơn số mũ cho phép lớn nhất dung cho dạng kết quả .
1.2.3.4. NANS
Khi mà NaNs khônglà số ,chúng không là phần nào của trục số thực (hình 1-3) .Việc mã hoá khoảng trống cho NáN trong dấu phẩy động được chỉ ra ở phần cuối phía trên trục số thực . đây là khoảng trống cho bất kỳ giá trị nào với giá trị lớn nhất cho phép biased exponent và a non-zero fraction .( bit dấu thì bị bỏ qua khi dung Nans)
chuẩn IEEE định nghĩa 2 lớp cho NaNs : là quite NaNs(QNaNs) và signaling NaNs.một QNaN là 1 NaN với hầu hết các bit phân số có nghĩa được thiết lập và SNaN là 1 NaN với hầu hết các bit phân số có nghĩa được xoá bỏ .QNaNs thì cho phép tự sinh ra thong qua hầu hết các thao tác toán học mà trong đó signaling là 1 ngoại lệ .SNaNs nói chung thì tín hiệu là một ngoại lệ thao tác không hợp lệ ,bất cứ lúc nào chúng hiển thị như là toán hạng trong các tháo tác toán học
1.2.4. Indefinite
Cho mỗi kiểu dữ liệu FPU ,thì 1có 1 phép mã hoá duy nhất dung để biểu diễn các vô cùng giá trị đặc biệtcho ,vd :khi thao tác trên giá trị số thực .thì giá t rị số thực vô cùng là 1 QNaN,FPU tạo ra giá trị vô cùng khi mà trả lời cho ngoại lệ dấu phẩy động che giấu.
1.3. FPU ARCHITECTURE
Từ 1 kiến trúc khái niệm trừu tượng ,FPU là một bộ đồng xử lý mà các thao tác thực hiện song song với đơn xử lý số nguyên (1-4) FPU có các lệnh của nó cũng giống như các lệnh giải mã và thực hiện tuàn tự như là đơn vị số nguyên và chia sẻ bus hệ thống với đơn vị đièu khiển số nguyên ngoài ra thì đơn vị số nguyên và FPU thao tác độc lập nhau và thực hiện song song ( vi kiến trúc hiện tại của bộ xử lý IA có xự khác nhau giữa các họ khác nhau của bộ xử lý.cho vd là: bộ xử lý Pentium pro có 2 khối xử lý số nguyên và có 2 Khối FPU(hình1-9)
Nhưng ngược lại thì bộ xử lý Pentium thì có 2 khối xử lý số nguyên và 1 con FPU và bộ xử lý intel486 thì có 1 khối xử lý số nguyên và 1 FPU
những lệnh thực thi trong môi trường của FPU (1-5 ) bao gồm 8 thanh ghi dữ liệu ( gọi là thanh ghi dữ liệu FPU) và sau đây là những thanh ghi phục vụ cho những mục đích đặc biệt
•Thanh ghi trạng thái
• Thanh ghi điều khiển
• Thanh ghi từ gắn thẻ
• Thanh ghi con trỏ lệnh
•Thanh ghi toán hang trước ( com trỏ dữ liệu )
• Thanh ghi Opcode
những thanh ghi này được miêu tả trong phần tiếp theo.
1.3.1. FPU Data Registers
Thanh ghi dữ liệu (hình 1-5) gồm 8 thanh ghi 80bit.giá trị đươ lưu trong nhưng thanh ghi này ở dạng số thực mở rộng (hinh 1-11) .khi giá trị là số thực ,số nguyên ,packed BCD integer,(tron bất kỳ định dạng nào được chỉ ra ở hình 1-11) được nạp từ bộ nhơ chính vào trong bất kỳ thang ghi dữ liệu nào cùa FPU lúc đó thì giá trị của nó tự động được thay đổi thành dạng số thực mở rộng(nếu chúng không ở dạng này) khi tính toán kết quả được sau đó được chuyển vào trong bộ nhớ chính từ thanh ghi dữ liệu kết quả có thể chuyển thành dạng số thực mở rộng hay chuyển thành 1 trong các định dạng khác của FPU
Những tập lệnh của FPU sẽ xửlý 8 thanh ghi dữ liệu như là 1 ngăn xếp các thanh ghi(hình1-6) tất cả địa chỉ của các thanh ghi dữ liềuj thì đều có quan hệ với thanh ghi ở trên đỉnh của stack.số lượng thanh ghi ở đỉnh stack hiện tại được lưu trư trong trường TOP(stack TOP) trong từ trạng thái của FPU.khi có 1 thao tác nạp thì TOP giảm đi 1 và nạp 1 giá trị vào trong thanh ghi ở đỉnh mới của stack,và thao tác lưu trữ sẽ lưu trữ giá trị từ thanh ghi từ thanh ghi TOP hiện tại vào trong bộ nhớ và sau đó tăng TOP lên 1 (trong FPU thì thao tác nạp tương đương thao tác PUSH và thao tác lưu trữ tương đương thao tác POP)
If a load operation is performed when TOP is at 0, register wraparound occurs and the new value
of TOP is set to 1. The floating-point stack-overflow exception indicates when wraparound
might cause an unsaved value to be overwritten (refer to Section 1...