Tải bản đầy đủ (.pdf) (31 trang)

báo cáo giữa kỳ môn thiết kế vi mạch thiết kế mạch cộng trừ nhân so sánh 4 bit có chuyển chế độ bằng một nút nhấn

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.08 MB, 31 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM KHOA ĐIỆN - ĐIỆN TỬ </b>

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<b>BẢNG PHÂN CÔNG NHIỆM VỤ </b>

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

<b>DANH MỤC HÌNH ẢNH </b>

Hình 1. Sơ đồ khối Topmodule: mạch cộng, trừ, nhân, so sánh 2 số nhị phân 4

bit có thể chuyển chế độ ... 8

Hình 2. Bộ cộng tồn phần ... 5

Hình 3. Cấu tạo của bộ cộng toàn phần 1 bit ... 9

Hình 4. Cấu tạo Khối mạch cộng 2 số nhị phân 4 bit ... 10

Hình 5. Kết quả Testbench của khối mạch cộng 2 số nhị phân 4 bit ... 10

Hình 6. Cấu tạo của Khối mạch trừ 2 số nhị phân 4 bit ... 11

Hình 7. Kết quả Testbench của khối mạch trừ 2 số nhị phân 4 bit ... 12

Hình 8. Cấu tạo bên trong của Khối mạch nhân 2 số nhị phân 4 bit ... 13

Hình 9. Kết quả Testbench của Khối nhân 2 số nhị phân 4 bit ... 14

Hình 10. Sơ đồ khối bộ so sánh 1 bit ... 15

Hình 11. Cấu tạo bên trong của bộ so sánh 1 bit ... 15

Hình 12. Cấu tạo bên trong của Khối mạch so sánh 2 số nhị phân 4 bit ... 16

Hình 13. Kết quả Testbench của Khối mạch so sánh 2 số nhị phân 4 bit ... 16

Hình 14. a) FF-D chỉ có chân Set tích cực mức cao ... 17

Hình 15. Cấu tạo Khối mạch đếm vịng 4 bit ... 17

Hình 16. Kết quả Testbench của Khối mạch đếm vòng 4 bit ... 18

Hình 17. Sơ đồ khối chi tiết của Topmodule ... 19

Hình 18. Kết quả Testbench của Topmodule ở chế độ cộng, trừ, nhân ... 20

Hình 19. Kết quả Testbench của Topmodule ở chế độ so sánh ... 20

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

<b>DANH MỤC BẢNG </b>

Bảng 1. Bảng giá trị của bộ cộng toàn phần ... 9 Bảng 2: Bảng giá trị của Mạch so sánh 2 số nhị phân 1 bit ... 15

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

<b>A. PHẦN MỞ ĐẦU </b>

Trong thời đại công nghệ số ngày nay, việc thiết kế và xây dựng các hệ thống số đóng vai trị quan trọng trong nhiều lĩnh vực từ điện tử tiêu dùng đến các hệ thống tự động hóa cơng nghiệp. Rất nhiều chip điện tử (vi mạch số) đã được nghiên cứu và sản xuất để phục vụ cho những vấn đề trên. Trong đó khơng thể không kể đến những khối cơ bản và thiết yếu của hệ thống số như mạch cộng, trừ, nhân, so sánh… Các mạch này khơng chỉ hỗ trợ các phép tốn cơ bản mà còn là nền tảng cho việc thực hiện các thuật toán phức tạp hơn trong xử lý số liệu và logic máy tính.

Vì những lí do trên, nhóm em muốn thiết kế một hệ thống bao gồm các khối mạch cộng, trừ, nhân và so sánh. Các mạch cơ bản này mặc dù đã quá quen thuộc đối với chúng ta, tuy nhiên việc thiết kế mạch có thể sẽ gặp phải nhiều thách thức như: tối ưu hóa kích thước, tốc độ xử lý, tính chính xác,… Để giải quyết những vấn đề này, việc sử dụng ngôn ngữ mô tả phần cứng như Verilog trở nên cần thiết, cho phép mô phỏng và kiểm tra mạch trước khi thực hiện sản xuất thực tế.

Trong bài báo cáo này, chúng em sẽ trình bày ngắn gọn về q trình thiết kế, mơ phỏng, kiểm tra một vi mạch số có khả năng thực hiện các phép cộng, trừ, nhân và so sánh hai số nhị phân 4 bit sử dụng Verilog. Sau đó khám phá cách thức tối ưu hóa mạch để đạt được hiệu suất cao, đồng thời đảm bảo tính chính xác và độ tin cậy của hệ thống khi được hoạt động theo nhiều yêu cầu khác nhau.

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

<b>B. PHẦN NỘI DUNG </b>

<b>1. Tổng quan về mạch cộng, trừ, nhân, so sánh 2 số nhị phân có thể chuyển chế độ </b>

<b>Mạch được cấu tạo cơ bản bao gồm 5 khối chính như sau : </b>

• Khối mạch cộng hai số A và B (4 bit)

• Khối mạch trừ số A cho số B (4 bit)

• Khối mạch nhân 2 số A và B (4 bit)

• Khối mạch so sánh 2 số A và B (4 bit)

• Khối mạch đếm vịng 4 bit dùng để chuyển chế độ

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

Sau khi thực hiện ghép các khối con (submodule) trên ta sẽ được một khối lớn (topmodule) có 4 ngõ vào (2 ngõ vào A, B 4bit, ngõ vào nút BTN và RES) và 5 ngõ ra (ngõ ra O 8bit, 1 ngõ ra bit dấu, 3 ngõ ra so sánh: A>B, A<B, A=B)

<i><small>Hình 1. Sơ đồ khối Topmodule: mạch cộng, trừ, nhân, so sánh 2 số nhị phân 4 bit có thể chuyển chế độ </small></i>

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

<b>2. Triển khai thiết kế từng khối chức năng trong hệ thống 2.1. Khối mạch cộng </b>

<i>Bộ cộng tồn phần 1 bit </i>

Trong đó :

• Cin : số nhớ của lần cộng trước đó • Cout : số nhớ của lần cộng hiện tại • S : tổng của 2 số A, B (1 bit )

Ta có bảng giá trị của mạch cộng toàn phần 1 bit như sau:

Từ bảng trạng thái trên ta viết được phương trình và xây dựng được khối mạch cộng toàn phần 1 bit từ các cổng logic:

S = A⊕B⊕Cin Cout = (A+B).Cin + A.B

<i><b><small>Hình 2. Bộ cộng tồn phần </small></b></i>

<i><small>Bảng 1. Bảng giá trị của bộ cộng toàn phần </small></i>

<i><small>Hình 3. Cấu tạo của bộ cộng tồn phần 1 bit </small></i>

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

<i><b><small>Hình 5. Kết quả Testbench của khối mạch cộng 2 số nhị phân 4 bit </small></b></i>

<i>Mạch cộng toàn phần 4 bit </i>

Ta kết nối 4 khối cộng toàn phần 1 bit thành 1 khối cộng toàn phần 4 bit. Để cho phép thực hiện chế độ cộng 4 bit, ta sẽ cho thêm một ngõ vào E tích cực mức cao kết nổi cổng AND với các ngõ ra như Hình. Khi ngõ vào E mức 0, bất chấp các ngõ vào thì ngõ ra S vẫn bằng 0. Khi ngõ vào E tích cực mức 1, ngõ ra S sẽ hiển thị kết quả cộng từ 2 số nhị phân 4 bit A và B.

<i>Kết quả Testbench </i>

Testcase 1: ngõ vào E ở mức 0, cho dù giá trị A, B có bằng bao nhiêu thì ngõ ra S vẫn ở giá trị là 0. Như trong testbench thì lúc này ngõ vào A là 12 và B là 3 thì ngõ ra S ln ở mức 0.

Testcase 2: ta cho ngõ vào E lên mức 1. Lúc này như trong testbench cứ mỗi 100 ns ta lại thay đổi giá trị của 2 số hạng A và B lần lượt là 6 và 4; 7 và 7; 14 và 15 thì ngõ ra S ở mỗi 100 ns lần lượt bằng 10, 14, 29. Kết quả ngõ ra S

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

Như vậy kết quả testbench đã cho thấy mạch thực hiện đúng chức năng, yêu cầu của khối mạch cộng 2 số 4 bit.

<b>2.2. Khối mạch trừ </b>

Nhờ vào phương pháp trừ 2 số nhị phân bằng cách cộng với bù 2:

Ta sẽ thiết kế được mạch trừ nhờ vào mạch cộng 2 số nhị phân 4 bit như sau:

Để tạo bộ trừ 4 bit ta sử dụng 2 bộ cộng 4 bit với các ngõ vào: • A: số trừ và B: số bị trừ

• Co : bit nhớ. Các ngõ ra:

• Bit dấu: C4 = 1 là dấu “+”. Nếu C4 = 0 là dấu “-” • M: giá trị của 2 số A trừ cho B

<i><small>Hình 6. Cấu tạo của Khối mạch trừ 2 số nhị phân 4 bit </small></i>

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

<i>Kết quả Testbench </i>

Testcase 1: ngõ vào E=0 nên bất chấp giá trị ngõ vào A và B, ngõ ra O luôn bằng 0.

Testcase 2: ngõ vào E lên mức 1, ta cho A=15 và B=1 thì giá trị ngõ ra O là kết quả của A trừ cho B nên S=14.

Testcase 3: ngõ vào E vẫn ở mức 1, vẫn giữ giá trị của A=15 còn B thay bằng 15, khi này kết quả ngõ ra S sẽ bằng 0.

Testcase 4: ngõ ra E lại về 0, ngõ ra S cũng ở 0 bất chấp giá trị A, B. Kết quả testbench cho thấy mạch chạy đúng chức năng của khối mạch trừ 2 số nhị phân 4 bit.

<i><small>Hình 7. Kết quả Testbench của khối mạch trừ 2 số nhị phân 4 bit</small></i>

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

<b>2.3. Khối mạch nhân </b>

<i>Tổng quát về các bước thực hiện mạch nhân 2 số nhị phân 4 bit </i>

Mạch nhân cơ bản được cấu tạo từ các bộ cộng toàn phần 1 bit và các cổng AND. Về việc thực hiện bài tốn nhân có thể xem như gồm 2 bước:

• Tính các tích từng phần: thực hiện bởi các cổng AND

• Tính tổng của các tích từng phần: thực hiện bởi bộ cộng toàn phần 1 bit và áp dụng bài tốn chuỗi số

Bộ nhân sẽ có a3, a2, a1, a0; b3, b2, b1, b0 là ngõ vào tương ứng với 2 số nhị phân 4 bit A, B và ngõ ra 8 bit tương ứng với 8 chân P[7] đến P[0].

Để có thể cho phép thực hiện chế độ nhân ta cũng sẽ cho thêm 1 ngõ vào E tích cực mức cao bằng cách kết nối chân E với từng ngõ ra bằng cổng AND.

<i><small>Hình 8. Cấu tạo bên trong của Khối mạch nhân 2 số nhị phân 4 bit </small></i>

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

<i>Kết quả Testbench </i>

Testcase 1: ngõ vào E lên mức 1, ta cho ngõ vào A=9 và B=1. Một số nào đó nhân với 1 sẽ ra chính nó nên lúc này ngõ ra P bằng 9

Testcase 2: ngõ vào E vẫn ở mức 1, ta cho A=0 và B=7 để kiểm tra một

<b>số nhân với 0. Ngõ ra P lúc này bằng 0 </b>

Testcase 3: ngõ vào E vẫn ở mức 1, ta cho A= 10 và B=11 để kiểm tra một số nhân với 10. Ngõ ra lúc này bằng 110 đúng với mong muốn.

Testcase 4: ngõ vào E vẫn ở 1, lúc này ta kiểm tra 2 số A và B lớn nhất (trong số nhị phân 4 bit) là A=B=15 nhân với nhau thì ngõ ra P bằng 225.

Testcase 5: ngõ vào E bằng 0, bất chấp ngõ vào A, B thì ngõ ra P ln bằng 0.

Vậy kết quả Testbench đã cho thấy mạch chạy đúng chức năng của khối mạch nhân 2 số nhị phân 4 bit.

<i><small>Hình 9. Kết quả Testbench của Khối nhân 2 số nhị phân 4 bit </small></i>

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

<b>2.4. Khối mạch so sánh </b>

<i>Mạch so sánh 2 số 1 bit </i>

Trong đó :

• Ngõ ra S: sẽ lên 1 nếu 2 bit được so sánh a>b • Ngõ ra G: sẽ lên 1 nếu 2 bit được so sánh a=b • Ngõ ra I: sẽ lên 1 nếu 2 bit được so sánh a<b Ta có bảng giá trị của mạch so sánh 1 bit như sau:

Từ bảng trạng thái trên ta viết được phương trình và xây dựng được khối mạch so sánh 1 bit từ các cổng logic như sau:

<i><b><small>Bảng 2: Bảng giá trị của Mạch so sánh 2 số nhị phân 1 bit Hình 10. Sơ đồ khối bộ so sánh 1 bit </small></b></i>

<i><b><small>Hình 11. Cấu tạo bên trong của bộ so sánh 1 bit </small></b></i>

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

<i><b>Mạch so sánh 2 số nhị phân 4 bit </b></i>

<b> </b>

<i><b>Kết quả Testbench </b></i>

<b> </b>

Testcase 1: ngõ vào E lên mức 1, ta cho 2 số nhị phân A=15 và B=13. Vì A>B nên ngõ ra ở greater sẽ lên mức 1 và các ngõ ra còn lại xuất ra mức 0.

Testcase 2: ngõ vào E vẫn ở mức 1, lúc này ta cho A= 11 và B=14 để

<b>A<B nên ngõ ra ở less sẽ lên mức 1 và các ngõ ra còn lại ở mức 0. </b>

Testcase 3: ngõ vào E vẫn ở mức 1, lúc này ta cho A= 8 và B=8 để A=B khi đó ngõ ra ở equal sẽ lên mức 1 và các ngõ ra còn lại sẽ là mức 0.

Testcase 4: ngõ vào E về 0, lúc này bất chấp A và B thì 3 ngõ ra greater, less và equal luôn bằng 0.

Qua kết quả cho thấy mạch thực hiện đúng chức năng của khối so sánh 2

<b>số 4 bit. </b>

<i><b><small>Hình 12. Cấu tạo bên trong của Khối mạch so sánh 2 số nhị phân 4 bit </small></b></i>

<i><b><small>Hình 13. Kết quả Testbench của Khối mạch so sánh 2 số nhị phân 4 bit </small></b></i>

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

<b>2.5. Khối mạch đếm vòng </b>

Mạch đếm vòng 4 bit có cấu tạo cơ bản là một thanh ghi dịch dùng Flip-Flop D với ngõ ra tầng sau cùng được đưa về ngõ vào của tầng đầu. Nhưng khi mới cấp nguồn cho mạch chạy, ta không biết bit 1 nằm ở ngõ ra của tầng nào. Do đó cần phải thiết lập dữ liệu dịch chuyển ban đầu bằng cách dùng ngõ vào Pre và Clr để đặt trước số đếm, trạng thái ban đầu sẽ là 1000 nên FF-D đầu tiên sẽ được set lên 1 và 3 FF-D còn lại clear về 0. Để có thể thiết kế được mạch được nêu như trên ta tiến hành thiết kế 2 loại FF-D với 2 chức năng khác nhau:

• FF-D 1 chỉ có chân Set tích cực mức cao • FF-D 2 chỉ có chân Clr tích cực mức cao

Bằng cách dùng 1 FF-D 1 và 3 FF-D 2, kết nối 4 FF-D trên như hình ta sẽ được 1 khối mạch đếm vịng 4 bit hồn chỉnh:

<i><small>Hình 15. Cấu tạo Khối mạch đếm vịng 4 bit Hình 14. a) FF-D chỉ có chân Set tích cực mức cao </small></i>

<i><small> b)FF-D chỉ có chân Reset tích cực mức cao </small></i>

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

<i>Kết quả Testbench </i>

Mặc định ban đầu ta cho ngõ vào RES lên 1 xung để ngõ ra Q0 lên 1, các ngõ ra khác là 0. Mỗi khi có xung Ck cạnh xuống thì ngõ ra Q kế tiếp sẽ lên 1 và các ngõ ra khác sẽ là 0. Như vậy cứ sau 4 nhịp xung Ck cạnh xuống mạch đã thực hiện xong 1 chu trình đếm vịng và cứ thế lặp lại.

Nhìn vào kết Testbench cho thấy mạch đã chạy đúng theo chức năng của khối mạch đếm vịng 4 bit.

<i><small>Hình 16. Kết quả Testbench của Khối mạch đếm vòng 4 bit </small></i>

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

<b>3. Hồn thiện mạch cộng, trừ, nhân, so sánh có thể chuyển chế độ 3.1. Liên kết các khối </b>

Sau khi hoàn thiện tất cả các khối con (submodule), ta tiến hành ghép chúng lại như sau: Các mạch cộng, trừ, nhân và so sánh sẽ có chung 2 ngõ vào A, B (4 bit). Mỗi ngõ ra từ Q0 → Q3 của mạch đếm vòng sẽ kết nối tới từng chân Enable của mạch cộng, trừ, nhân, và so sánh. Ngoài ra, các ngõ ra của mạch cộng, trừ, nhân sẽ được kết nối với các cổng OR để có chung ngõ ra. Chi tiết được mơ tả như trong Hình 17.

Thực chất tất cả các khối đều hoạt động nhưng do mỗi ngõ ra Q của mạch đếm vòng được kết nối với chân E của mỗi mạch và các ngõ ra được kết nối chung với cổng OR (trừ mạch so sánh) nên ngõ ra Q nào của khối đếm vịng đang ở mức 1 thì ngõ ra O của Topmodule sẽ xuất ra kết quả của mạch được nối

<i><small>Hình 17. Sơ đồ khối chi tiết của Topmodule </small></i>

</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">

chân E với ngõ ra Q đó. Riêng ngõ ra bit Dấu chỉ được tính khi mạch đang thực hiện chế độ trừ (ngõ ra bit Dấu bằng 1 biểu diễn số dương, bằng 0 thì là số âm).

<b>3.2. Kết quả Testbench của Topmodule</b>

<i><small>Hình 18. Kết quả Testbench của Topmodule ở chế độ cộng, trừ, nhân </small></i>

Ở đây chúng ta sẽ giả sử mỗi lần nhấn nút BTN thì ngõ vào nút BTN của mạch là một xung lên rồi xuống đơn giản trong khoảng thời gian ngắn (20 ns). Testcase 1: mặc định ban đầu ta cho ngõ vào RES lên 1 rồi xuống 0, mạch sẽ thực hiện chế độ cộng, lúc này ngõ ra O sẽ chỉ hiển thị kết quả là phép cộng của hai số A và B. Ở trường hợp này ta cho A=4 và B=2 nên ngõ ra O là 6.

Testcase 2: ngõ vào BTN lên 1 xung, ngay sau đó mạch sẽ chuyển sang chế độ trừ và ngõ ra O sẽ là kết quả của số A trừ cho số B. A=5 và B=3, ngõ ra O sẽ bằng 2 nhưng kết quả là số dương nên bit dấu lên 1.

Testcase 3: vẫn ở chế độ trừ nhưng đảo giá trị của A và B, lúc này A=3 và B=5, ngõ ra O cũng là 2 nhưng kết quả phải là số âm nên ngõ ra bit Dấu về 0.

Testcase 4: ngõ vào BTN thêm 1 xung, mạch chuyển sang chế độ nhân, ngõ ra O hiển thị kết quả của 2 số A và B nhân với nhau A=7, B=8 nên O=56.

<i><small>Hình 19. Kết quả Testbench của Topmodule ở chế độ so sánh </small></i>

</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">

Testcase 5: Thêm xung vô ngõ vào BTN lần 3, mạch sẽ chuyển sang chế độ so sánh. Ta lấy A=9 và B=6 để giá trị của A lớn hơn B khi này ngõ ra greater (A>B) lên mức 1 các ngõ ra khác ở mức 0.

Testcase 6: vẫn ở chế độ so sánh, ta lại cho A=11, B=11 để giá trị của A bằng B lúc này ngõ ra equal (A=B) lên 1 và các ngõ ra khác là 0.

Testcase 7: vẫn trong chế độ so sánh nên khi cho A=3 và B=8 khi này A nhỏ hơn B, ngõ ra less (A<B) lên 1 và các ngõ ra khác sẽ ở mức 0.

Testcase 8: Cuối cùng ta cho thêm 1 xung vào BTN, mạch lại chuyển về chế độ cộng như ban đầu. Giá trị ngõ vào A và B vẫn giữ nguyên của trường hợp trước đó. Lúc này ngõ ra O sẽ là 11, các ngõ ra còn lại về mức 0.

Kết quả testbench trên đã cho thấy mạch thực hiện hoàn toàn đúng yêu cầu và chức năng cho từng trường hợp thử.

</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">

<b>C. PHẦN KẾT LUẬN </b>

Qua quá trình nghiên cứu và thực hiện, chúng em đã thành công trong việc thiết kế và mô phỏng một vi mạch số có khả năng cộng, trừ, nhân và so sánh hai số nhị phân 4 bit sử dụng ngôn ngữ Verilog. Mạch thiết kế đáp ứng được các yêu cầu về tính chính xác và độ tin cậy cao.

Q trình mơ phỏng và kiểm tra đã giúp chúng em sửa chữa được các vấn đề, các lỗi tiềm ẩn, đồng thời cung cấp một cái nhìn tổng quan về cách thức hoạt động của mạch trong các tình huống khác nhau.

Tuy khơng đạt được tính ứng dụng cao trong mơi trường thực tế nhưng nó có khả năng tích hợp vào các hệ thống số phức tạp hơn. Trong tương lai, chúng em dự định sẽ tiếp tục nghiên cứu để cải thiện độ tin cậy của mạch, đồng thời phát triển và mở rộng khả năng của mạch để hỗ trợ thực hiện thêm các phép toán số học khác phức tạp hơn. Việc tích hợp với các công nghệ mới sẽ được xem xét để nâng cao khả năng ứng dụng của mạch trong thế giới mà kĩ thuật số càng ngày càng phát triển.

</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25">

<small>assign P[0]=A[0] & B[0] & E; assign X[1]=A[1] & B[0]; assign X[2]=A[2] & B[0]; assign X[3]=A[3] & B[0]; assign Y[0]=A[0] & B[1]; assign Y[1]=A[1] & B[1]; assign Y[2]=A[2] & B[1]; assign Y[3]=A[3] & B[1]; assign Z[0]=A[0] & B[2]; assign Z[1]=A[1] & B[2]; assign Z[2]=A[2] & B[2]; assign Z[3]=A[3] & B[2]; </small>

<small>assign T[0]=A[0] & B[3]; assign T[1]=A[1] & B[3]; assign T[2]=A[2] & B[3]; assign T[3]=A[3] & B[3]; </small>

<small>fa1b fa1 (Y[0],X[1],1'b0,H[1],O[0]); fa1b fa2 (Y[1],X[2],O[0],S[1],O[1]); fa1b fa3 (Y[2],X[3],O[1],S[2],O[2]); fa1b fa4 (Y[3],1'b0,O[2],S[3],O[3]); fa1b fa5 (Z[0],S[1],1'b0,H[2],O[4]); fa1b fa6 (Z[1],S[2],O[4],S[5],O[5]); </small>

</div>

×