1. Trang chủ
  2. » Luận Văn - Báo Cáo

Thiết kế khối số học số thực dấu phẩy động

41 1,7K 18

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 41
Dung lượng 569,69 KB

Nội dung

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐIỆN TỬ - VIỄN THÔNG BÀI TẬP LỚN MÔN THIẾT KẾ TỔNG HỢP HỆ THÔNG SỐ ĐỀ TÀI: Thiết kế khối số học số thực dấu phẩy động Giáo viên hướng dẫn : TS. Võ Lê Cường. Nhóm 20: Sinh viên Đinh Văn Nam 20091814 ĐTVT 01 K54 Nguyễn Mạnh Trung 20115803 CNĐT-TT 1-k56 Hà Nội, 12/2014 1 Mục Lục. Mục Lục …………………………………………………………………………1 Danh mục hình ảnh. …………………………………………………………… 2 Lời cảm ơn……………………………………………………………………… 3 Tóm tắt. …………………………………………………………………………4 Chương 1. Giới thiệu……………………………………………………. 5 1.1 Giới thiệu……………………………………………………………5 1.2 FPU là gì? ………………………………………………………… 5 1.3 Tiêu chuẩn IEEE754……………………………………………… 7 1.4 Giới thiệu đề tài…………………………………………………… 8 1.5 Kết luận chương. ……………………………………………………9 Chương 2. Lý Thuyết……………………………………………………. 10 2.1 Giới thiệu. ………………………………………………………… 10 2.2 Số thực dấu phẩy động……………………………………………… 10 2.3 Biểu diễn số thực dấu chấm động thực hiện trong dự án…………….11 2.3.1 Biểu diễn số bù 2 của số nhi phân 4 bít. ……………………11 a. Phần phân số F(fraction). …………………………… 12 b. Phần số mũ E(exponent)……………………………….13 2.4 Nhân hai số thực dấu phẩy động. ……………………………………13 2.5 Cộng số thực dấu phẩy động………………………………………….18 2.6 Trừ hai số thực dấu phẩy động. ………………………………………19 2.7Kết luận chương………………………………………………………21 Chương 3 Mô phỏng và kết quả………………………………………… 22 2 3.1 Giới thiệu chương……………………………………………………22 . 3.2 Sơ đồ khối……………………………………………………………23 3.3 Kết quả mô phỏng……………………………………………………24 3.3.1 Kết quả mô phỏng trên quartus……………………………24 3.3.2 Kết quả mô phỏng trên Modulesim……………………… 25 3.4 Kết luận chương…………………………………………… 29 Chương 4 Kết Luận………………………………………………………30 Tài liệu tham khảo………………………………………………………………32 Phụ Lục …………………………………………………………………………33 Danh mục hình ảnh, bảng biểu. Hình vẽ, Bảng biểu Mô tả Hình 2.1 Thuật toán nhân số thực dấu phẩy động. 3 Hình 2.2 Thuật toán nhân hai số nguyên không dấu Hình 2.3 Thuật toán cộng số thực dấu phẩy động. Hình 2.4 Thuật toán trừ số thực dấu phẩy động. Hình 3.1 Sơ đồ khối của chương trình. Bảng 3.1 Mô tả chân dữ liệu trong sơ đồ khối. Bảng 3.2 Bảng mô tả giá trị của mã phép toán. Bảng 3.3 Bảng chuyển đổi số nhị phân 4 bít hiển thị trên led 7 thanh. Hình 3.1 Kết quả mô phỏng thành công trên quartus Hình 3.4 Sơ đồ luồng dữ liệu dataflow Hình 3.5 Bảng kết quả trancript. Bảng 3.4 Tổng hợp kết quả mô phỏng. Lời cảm ơn. Chúng tôi muốn bày tỏ lòng biết ơn chân thành đối với người hướng dẫn của chúng tôi TS Võ Lê Cương, Viện Điện Tử Viễn Thông, Đại Học Bách Khoa Hà Nội đã giám sát, tạo động lực và trên tất cả là sự giúp đỡ ở trong toàn bộ thời gian của dự án của chúng tôi mà nếu không có thì dự án không thể hoàn thành. 4 Chúng tôi thực sự biết ơn đến tất cả bạn bè của chúng tôi, những người đã có những góp ý quý báu trong thời gian chúng tôi làm dự án. Chúng tôi cũng phải thừa nhận các nguồn tài nguyên học tập mà chúng tôi đã nhận được từ nhiều nguồn khác nhau. Chúng tôi xin gửi lời cảm ơn tới gia đình, chính là nguồn lực động viên chúng tôi phấn đấu trong học tập và cuộc sống. Tuy có nhiều cố gắng trong quá trình học tập cũng như thời gian làm dự án nhưng không thể tránh khỏi những thiếu sót, tôi rất mong được sự góp ý quý báu của tất cả các thầy cô giáo và các bạn để dự án của chúng tôi được hoàn thiện. Chúng tôi xin chân thành cảm ơn!! Hà Nội, ngày 4 tháng 5 năm 2015. Sinh Viên Đinh Văn Nam Nguyễn Mạnh Trung Tóm tắt. 5 Khối số thực dấu phẩy động rất thông dụng trong bộ đồng xử lý toán học. Nó là một phần của một hệ thống máy tính được thiết kế đặc biệt để thực hiện các hoạt động tính toán trên các số thực dấu chấm động. Một số hoạt động tính toán trên khối FPU như: cộng, trừ, nhân, chia. Mục đích là để xây dựng một CPU hiệu quả để thực hiện các chức năng cơ bản cũng như chức năng siêu việt với việc làm giảm độ phức tạp của logic được sử dụng làm giảm hoặc ít nhất giới hạn thời gian tương đương như dòng x87 và làm giảm bộ nhớ càng nhiều càng tốt. Để thực hiện các chức năng như: cộng, trừ, nhân , chia…. các số thực dấu phẩy động phải chuyển đổi dữ liệu sang định dạng chuẩn IEEE 754. Tất cả thuật toán trên đã được đồng bộ hóa và đánh giá theo môi trường Spartan 3E Synthesis. Tất cả các chức năng được xây dựng bởi các thuật toán có hiệu quả với một số thay đổi kết hợp ở cuối trong phạm vi cho phép. Chương 1. Giới thiệu. 1.1 Giới thiệu chương. 6 Khối số thực dấu phẩy động rất thông dụng trong bộ đồng xử lý toán học. Nó được thiết kế để thực hiện các hoạt động tính toán trên số thực dấu phẩy động. Một số hoạt động tính toán trên khối FPU như: cộng, trừ, nhân, chia. FPU cũng có thực hiện một số hoạt động tính toán khác như: hàm mũ, lượng giác. Các số thực dấu phẩy động được chuẩn hóa theo chuẩn IEE754. Ở chương này chúng tôi giới thiệu những nội dung sau: FPU là gì? trong mục 1.2. Giới thiệu tiêu chuẩn IEEE754 trongmục 1.3. Sau đó tóm tắt về dự án trong mục 1.4. Tóm tắt chương, mục 1.5. 1.2 FPU là gì? Khi một CPU thực hiện một chương trình được gọi đến một số thực dấu phẩy động (FP) hoạt động, có ba cách nó có thể thực hiện. Thứ nhất, nó có thể gọi là một số thực dấu phẩy động giả lập, đó là một thư viện số thực dấu phẩy động, sử dụng một loạt các phép tính số học số thực dấu phẩy động được thực hiện trên khối ALU. Các giả lập có thể lưu trên các phần cứng bổ sung của một FPU nhưng chậm đáng kể. Thứ hai, nó có thể sử dụng một thêm một FPU được hoàn toàn tách biệt với CPU, nó chỉ cần thiết để tăng tốc độ tính toán . Còn lại là sử dụng tích hợp FPU có trong hệ thống. FPU được thiết kế bởi với độ chính xác theo tiêu chuẩn IEEE754. Nó không chỉ giải quyết các phép tính cơ bản với số thực dấu phẩy động như: cộng, trừ, nhân, chia mà còn có thể xử lý các hoạt động như dịch, xác định căn bậc và các chức năng siêu việt như sin, cos. 1.3 Tiêu chuẩn IEEE754. IEEE754 là tiêu chuẩn công nghệ được thành lập bởi tổ chức IEEE754 và nó được sử dụng rộng rãi trong việc tính toán số thực dấu phẩy động, theo sau bởi nhiều phần 7 cứng( CPU và FPU) và thực hiện trên phần mềm. Định dạng một số thực dấu phẩy động chiếm 32 bit trong bộ nhớ của máy tính. Phiên bản hiện tại, IEEE 754-2008 ra mắt vào tháng Tám năm 2008. Trong phiên bản IEEE754-2008 Trong IEEE 754-2008, 32-bit với 2 định dạng chính thức là: single precision hoặc binary32. Các tiêu chuẩn IEEE754 quy định một số tực dấu phẩy động là có bít dấu hiệu đó có chiều dài 1 bít,một số mũ có chiều dài 8 bit và phần định trị có chiều dài 24 bit trong đó 23 bit là được lưu trữ một cách rõ ràng và 1bít là tiềm ẩn . Bít dấu xác định dấu của số thực dấu chấm động. Bằng 0 thì số mang dấu dương, bằng 1 số mang dấu âm. Phần mũ sử dụng số nguyên 8 bít có giá trị từ -128 đến 127 hoặc dùng số nguyên không âm có giá trị từ 0 đến 255. Phần định trị chứa 23 bít phần bên phải của điểm nhị phân và bít tiềm ẩn(nằm ở bên trái điểm nhị phân). Với số có giá trị bằng 1 thì tất cả các bít phần mũ đều bằng 0. Như vậy chỉ có 23 bit xuất hiện ở phần định trị trong các định dạng bộ nhớ nhưng tổng cộng độ chính xác là 24 bit. Ví dụ: S EEEEEEEE FFFFFFFFFFFFFFFFFFFFFFF 31 30 23 22 0 IEEE 754 định nghĩa về các đinh dạng nhất định nó là một tập hợp các đại diện của các giá trị và ký hiệu của số. Định nghĩa các tiêu chuẩn [4]:  Định dạng số học mà là tập hợp các số dấu chấm động nhị phân và thập phân, trong đó bao gồm các số hữu hạn và số không, một giá trị đặc biệt được gọi là "không phải là một con số" (NaN) và vô hạn. 8  Định dạng trao đổi là một chuỗi bít (mã hóa) được sử dụng để trao đổi một dữ liệu số thực dấu phẩy động trong một hình thức thu gọn và hiệu quả.  Quy tắc làm tròn là giá trị của số thực đấu phẩy động phải được đưa về giá trị phù hợp khi làm phép tính số học . Trường hợp ngoại lệ là chỉ ra các trường hợp đặc biệt (như chia cho số không, tràn bít trên, tràn bít dưới, vv) xảy ra trong quá trình thực hiện phép tính. Trong năm trường hợp ngoại lệ. Tất các giá trị đều được đưa về giá trị mặc định. Năm trường hợp ngoại lệ có là:  Phép tính không chính xác là căn bậc hai với số âm, đầu ra trong không tồn tại  Chia cho không là một phép tính trên một toán hạng hữu hạn trong đó kết quả là vô hạn ví dụ, 1/0 hoặc log (0) mặc định trả về vô cùng âm hoặc vô cùng dương.  Tràn bít xảy ra khi một phép tính có kết quả quá lớn nằm ngoái dải gí trị cho phép. Kết quả trả về giá trị mặc định( làm tròn đền giá trị gần nhất).  Underflow xảy ra khi một phép tính có kết quả quá nhỏ nằm ngoài khoảng giá trị thông thường và không chính xác theo măc định. 1.4 Giới thiệu đề tài. Thiết kế khối số học số thực dấu phẩy động(Floating Point Arithmetic unit) . Mỗi một số thực dấu phẩy động gồm có 4 bít biểu diễn phần giá trị số thực và 4 bít biểu diễn phần số mũ, với số âm biểu diển ở dạng bù 2. Khối số học số thực dấu phẩy động có các khối lệnh sau:  010 FPA Cộng các toán hạng số thực dấu phẩy động.  011 FBS Trừ các toán hạng số thực dấu phẩy động.  100 FBM Nhân các toán hạng số thực dấu phẩy động.  101 FPD Chia các toán hạng số thực dấu phẩy động. 9 Kết quả sẽ được thể hiện ở dạng số thực dấu phẩy động ở dạng đã được chuẩn hóa và được hiển thị trên LED 7 thanh. Sử dụng LED 7 thanh để chỉ ra phần tràn bộ nhớ. Dữ liệu đầu vào của khối số thực dấu phẩy động sẽ được lấy tử bàn phím điện thoại kích thước 4x4. Giả sử các đầu vào đều ở dạng chuẩn hoặc bằng 0. Hệ thống phải gồm có khối phần số thực, khối phần số mũ, khối điều khiển, và khối hiển thị chuyển số nhị phân 4 bít hiển thị trên led 7 thanh. 1.5 Kết luận chương. Chương này mô tả ngắn gọn ý nghĩa của khối FPU và tiêu chuẩn IEEE 754, chế độ làm tròn số, định dạng số học, trường hợp ngoại lệ và hoán đổi định dạng. Chương này cũng đưa ra một cái nhìn tổng quan của dự án. Chương 2. Lý thuyết. 10 [...]... quát về số thực dấu châm động, phần 2.3 giới thiệu về số thực dấu châm động thực hiện trong đề tài, phần 2.4 giới thiệu về thuật toán nhân số thực dấu phẩy động, phần 2.5 giới thiệu về thuật toán cộng hai số thực dấu châm động, phần 2.6 giới thiệu về thuật toán trừ hai sô thực dấu phẩy động Và cuối cùng, phần 2.7 đưa ra một bản tóm tắt của chương 2.2 Số thực dấu phẩy động Số thực dấu phẩy động( Floating... chức, trường đại học và nhiều viện nghiên cứu trên thế giới Trong dự án này tìm hiểu về:” Thiết kế khối sô học số thực dấu phẩy động Cụ thể dự án đã đạt được các kết quả sau  Những điều đạt được -Trình bày lý thuyết khối FPU trong máy tinh -Tìm hiểu lý thuyết chuẩn hóa IEEE754 trong tính toán số học số thực dấu phẩy động -Trình bày thuật toán cộng, trừ, nhân, chia số thực dấu phẩy động với 4 bít phần... số đó mang dấu dương còn nếu bít dấu bằng 1 thì số đó mang dấu âm Dài giá trì của phần số mũ nằm trong khoảng từ đến tương đương tư đến 2.3.2 Biểu diễn số thực dấu phẩy động trong dự án Số thực dấu phẩy động N được xây dựng từ phần phân số F(fraction) và số mũ E(exponent) Khi đó N= F* Phần phân số và số mũ được trình bày ở dạng nhị phân bù 2 Đặc trưng số thực dấu phẩy động trong hệ thống thì chiều dài... E=-8 Y Shift_F N Y >3 có số mũ lớn hơn N tràn Tăng phần số mũ Gán kết quả là số F bị nhỏ hơn giá trị Kết thúc F F>>1, Y N Chuẩ E=E+1 n hoa Shift_F=|E1-E2| F>1, Y N Chuẩ E=E+1 n hoa Shift_F=|E1-E2| F . hạng số thực dấu phẩy động.  011 FBS Trừ các toán hạng số thực dấu phẩy động.  100 FBM Nhân các toán hạng số thực dấu phẩy động.  101 FPD Chia các toán hạng số thực dấu phẩy động. 9 Kết quả. . Mỗi một số thực dấu phẩy động gồm có 4 bít biểu diễn phần giá trị số thực và 4 bít biểu diễn phần số mũ, với số âm biểu diển ở dạng bù 2. Khối số học số thực dấu phẩy động có các khối lệnh. nhân số thực dấu phẩy động. 3 Hình 2.2 Thuật toán nhân hai số nguyên không dấu Hình 2.3 Thuật toán cộng số thực dấu phẩy động. Hình 2.4 Thuật toán trừ số thực dấu phẩy động. Hình 3.1 Sơ đồ khối

Ngày đăng: 11/06/2015, 15:16

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w