Chương 1: Tổng quan: giới thiệu về flip-flop và các vấn đề gặp phải trong thiết kế flip-flop. Chương 2: Cơ sở lý thuyết: trình bày lý thuyết về CMOS, cổng logic và flip-flop. Chương 3: Thiết kế: nêu yêu cầu hệ thống, vẽ sơ đồ khối và thiết kế chi tiết các cấu trúc flip-flop D. Chương 4: Kết quả: hình ảnh mô phỏng, số liệu phân tích các thông số về công suất, độ trễ của các cấu trúc flip-flop D và lập bảng so sánh.
Chương 5: Kết luận và hướng phát triển đề tài: chỉ ra ưu điểm và nhược điểm của đề tài và hướng phát triển. 2 CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 2. BÁN DẪN Ô-XÍT KIM LOẠI BÙ 2. Cấu trúc của CMOS Bán dẫn ô xít kim loại bù (Complementary Metal-Oxide-Semiconductor gọi tắt là CMOS) là một loại công nghệ dùng để chế tạo mạch tích hợp.
Công nghệ CMOS sử dụng hai transistor nMOS và pMOS, tại mỗi thời điểm chỉ có một loại transistor ở trạng thái dẫn (ON) [4].1: Cấu trúc cơ bản của nMOS Một cấu trúc MOS cơ bản bao gồm 4 phần là cực cổng G (Gate), cực máng D (Drain), cực nguồn S (Source) và phần thân (Body) như hình 2. Cực G sẽ được đặt trên một lớp ô xít kim loại thường là SiO2 và có độ dày là tox. Ở dưới lớp ô xít kim loại đó là 2 cực D và S, môi trường truyền dẫn điện tích giữa D và S (body) là một lớp nền mang điện tích trái dấu với 2 cực D và S. Khảng cách giữa cực D và cực S gọi là chiều dài Ldrawn, tuy nhiên, do sự ảnh hưởng của khuếch tán biên của 2 cực D và S nên chiều dài thực sự của một MOS sẽ nhỏ hơn Ldrawn.
Để tránh ảnh hưởng của khuếch tán biên, chúng ta chỉ xem xét [5]: Leff = Ldrawn – 2LD (2.2: Kí hiệu của nMOS và pMOS 2. Công suất tiêu thụ [6] Khi tính toán công suất cho thiết kế mạch CMOS, chúng ta thường quan tâm đến 2 loại công suất chính là công suất tiêu thụ tĩnh và công suất tiêu thụ động. Công suất tiêu thụ tĩnh gây ra bởi: dòng rò rỉ khi transistor ngắt (Isub), dòng rò rỉ từ cực G (Igate), dòng rò rỉ từ các mối nối của các cực (Ijunc), dòng rò rỉ từ dòng nội tại MOS (Icontention). Công suất tiêu thụ động gây ra bởi: nạp và xả tụ khi MOS chuyển trạng thái ON/OFF (Pswitching), dòng điện ngắn mạch khi cả pMOS và nMOS đều dẫn (Pshort circuit).
Công thức tính toán công suất tiêu thụ được nêu ra như: Pdynamic = Pswitching + Pshort circuit (2.2b) Ptotal = Pdynamic + Pstatic (2.2c) Trong công thức (2.2a), giá trị công suất gây ra bởi ngắn mạch rất nhỏ chỉ chiếm dưới 10% tổng công suất tiêu thụ động, vậy nên chúng ta thường chỉ tính toán công suất chuyển trạng thái rồi cộng thêm 10%. Công suất chuyển trạng thái được viết như: Pswitching = αCV2DDf (2.3) Trong đó: α là hệ số hoạt động. C là giá trị điện dung từ dây dẫn và transistor trong một mạch. VDD là giá trị điện áp nguồn cung cấp.
f là tần số hoạt động của xung đồng hồ. Độ trễ [7] Độ trễ được định nghĩa là khoảng thời gian mà tín hiệu di chuyển từ ngõ vào đến ngõ ra. Độ trễ bao gồm thời gian tín hiệu di chuyển qua các cổng logic và đường dây. Để thuận tiện cho mô phỏng và tính toán hơn thì chúng ta quy định độ trễ bắt đầu được tính từ vị trí mà tín hiệu ngõ vào vượt qua 50% giá trị độ lớn đến vị trí mà tín hiệu ngõ ra vượt qua 50% giá trị độ lớn.
Khoảng thời gian mà tín hiệu ngõ vào chuyển đổi từ trạng thái thấp đến cao hoặc từ cao đến thấp được gọi theo lần lượt là tr và tf. Khoảng thời gian mà tín tín hiệu ngõ ra chuyển đổi trạng thái từ thấp đến cao hoặc từ cao đến thấp được gọi theo lần lượt là tLH và tHL. Tùy thuộc vào trạng thái của ngõ ra lúc đó là tLH hoặc tHL mà chúng ta có độ trễ tương ứng là tPLH và tPHL.3: Độ trễ và thời gian chuyển đổi trạng thái Bên trong một con chip có thể được cấu thành từ hàng triệu hoặc hàng tỉ transistor, để tính toán được độ trễ của con chip đó thì các nhà thiết kế đã đưa ra một số mô hình tính toán như: mô hình độ trễ RC (RC delay model), mô hình độ trễ tuyến tính (Linear delay model), mô hình độ trễ phân tích thời gian (Timing analysis delay model). Mô hình độ trễ RC [8]: - Ý tưởng của mô hình này là xem một transistor như một công tắc.
- pMOS có điện trở 2R và điện dung C. - nMOS có có điện trở R và điện dung C. - Giá trị điện dung C tỉ lệ thuận với độ rộng k của transistor. - Giá trị điện trở R tỉ lệ nghịch với độ rộng k của transistor.4: Mạch tương đương cho transistor - Giá trị độ trễ tpd = Ri*Ci (2.4) với i là các ngõ vào.
Mô hình độ trễ tuyến tính [9]: Giá trị độ trễ của một mạch có N tầng được tính theo công thức: D = di = bi*gi*hi + pi (i là tầng cần tính, i ≤ N) (2.4) Trong đó: g là giá trị điện dung tại cực G của transistor. h là tỷ lệ điện dung giữa ngõ ra và ngõ vào. b là tỷ lệ tổng điện dung xuất hiện trên 1 tầng với điện dung trên đường cần tính. p là độ trễ nội tại, được tính theo mô hình độ trễ tuyến tính.
g, b và h được chuẩn hóa theo giá trị = 3RC. Từ công thức (2.5) chúng ta tính được thời gian độ trễ nhỏ nhất của hệ thống: D ≥ N 𝑁√𝑏𝑖 ∗ 𝑔𝑖 ∗ ℎ𝑖 + 𝑝𝑖 (i là tầng cần tính, i ≤ N, N ≥ 1) (2.5: Hệ thống đa tầng gồm các cổng logic Hình 2.6: Hệ thống có 2 cổng đảo trong một tầng 6 2. Cổng logic cơ bản Cổng NOT Cổng NOT được cấu tạo bởi một pMOS nối tiếp với một nMOS. Khi tín hiệu ngõ vào A đi qua cổng NOT sẽ cho một giá trị nghịch đảo tại ngõ ra Y.
7: Mạch cổng NOT (a) và ký hiệu cổng NOT (b) Bảng 2.1: Bảng trạng thái của cổng NOT A Y 0 1 1 0 Biểu thức ngõ ra Y = 𝐴̅ Cổng NAND Cổng NAND được cấu tạo bởi K pMOS mắc song song sau đó được mắc nối tiếp K nMOS với K là số ngõ vào cổng NAND. Khi tín hiệu đi qua cổng NAND sẽ cho kết quả ngõ ra là nghịch đảo giá trị tích của K tín hiệu ngõ vào.8: Mạch cổng NAND 2 ngõ vào (a) và ký hiệu cổng NAND (b) 7 Bảng 2.2: Bảng trạng thái của cổng NAND 2 ngõ vào A B Y 0 0 1 0 1 1 1 0 1 1 1 0 Biểu thức ngõ ra Y = ̅̅̅̅ 𝐴𝐵 Cổng NOR Cổng NOR được cấu tạo bởi K nMOS mắc song song sau đó được mắc nối tiếp K pMOS với K là số ngõ vào cổng NOR. Khi tín hiệu đi qua cổng NOR sẽ cho kết quả ngõ ra là nghịch đảo giá trị tổng của K tín hiệu ngõ vào.9: Mạch cổng NOR 2 ngõ vào (a) và ký hiệu cổng NOR (b) Bảng 2.3: Bảng trạng thái của cổng NOR 2 ngõ vào A B Y 0 0 1 0 1 0 1 0 0 1 1 0 ̅̅̅̅̅̅̅̅ Biểu thức ngõ ra Y = 𝐴 +𝐵 2. Bóng bán dẫn truyền và cổng truyền Bóng bán dẫn truyền (Pass transistor) 8 Khi pMOS hoặc nMOS được sử dụng độc lập như một công tắc thì ta gọi đó là một pass transistor.
Ưu điểm của pass transistor: - Thiết kế cổng logic với ít transistor hơn. - Tỷ lệ mạch nhỏ hơn.10: Mạch cổng NAND 2 ngõ vào ban đầu (a) và mạch cổng NAND 2 ngõ vào sử dụng pass transistor Nhược điểm của pass transistor: - Do ảnh hưởng của điện áp ngưỡng (Vt) nên nMOS độc lập sẽ truyền mức logic 1 yếu và truyền mức logic 0 mạnh, pMOS độc lập sẽ truyền mức logic 1 mạnh và truyền mức logic 0 yếu. - Nếu nối liên tiếp các transistor sẽ tăng độ trễ và có thể sai lệch giá trị logic. Cổng truyền (Transmission gate/Pass gate) Để giải quyết nhược điểm của pass transistor thì chúng ta mắc song song nMOS và pMOS để tạo ra một mạch có tên gọi là cổng truyền.
Cổng truyền sẽ sử dụng cả xung đồng hồ và xung đồng hồ đảo để điều khiển như hình 2.11, mục đích của việc đó là đảm bảo cả pMOS và nMOS cùng hoạt động trong trạng thái giống nhau (trạng thái ON/OFF).11, khi trong trạng thái ON: - Mức logic tại a = 1: nếu Vgs của nMOS nhỏ hơn Vt thì sẽ khiến nMOS bị ngắt, nhưng tín hiệu vẫn được truyền đến b do pMOS không bị ngắt. - Mức logic tại a = 0: nếu Vgs của pMOS lớn hơn Vt thì sẽ khiến pMOS bị ngắt, nhưng tín hiệu vẫn được truyền đến b do nMOS không bị ngắt.11: Mạch cổng truyền (a) và ký hiệu cổng truyền (b) Ưu điểm của cổng truyền: - Có thể thiết kế cổng logic, MUX. - Truyền dẫn tốt điện áp và đáp ứng chính xác mức logic cho hệ thống. Nhược điểm của cổng truyền: - Không tối ưu diện tích của mạch.
- Tốn nhiều chi phí sản xuất hơn. Tùy theo chức năng của hệ thống mà chúng ta có thể lựa chọn sử dụng pass transistor hoặc cổng truyền. MẠCH CHỐT D [11] Mạch chốt D (D Latch) là một mạch có chức năng chốt tín hiệu ngõ vào và cập nhật tín hiệu tại ngõ ra theo tín hiệu ngõ vào khi có sự điều khiển của xung đồng hồ. Trong CMOS, mạch chốt D có thể được thiết kế từ các mạch cổng NOT, mạch cổng buffer, mạch cổng truyền, transistor và được điều khiển bởi mức logic 1 hoặc 0 của xung đồng hồ.12: Mạch chốt D mức logic thấp (a) và mạch chốt D mức logic cao (b) 10 Hình 2.13: Sơ đồ nguyên lý mạch chốt D mức logic thấp Trong hình 2.13 có TG1 và TG2 là các cổng truyền, I1, I2 và I3 là các cổng NOT, D là tín hiệu ngõ vào, Q là tín hiệu ngõ ra, CLK là xung đồng hồ, CLKB là xung đồng hồ đảo.
Hoạt động của mạch chốt D mức logic thấp: - Khi xung đồng hồ CLK đang ở mức logic thấp (CLK = 0) thì TG1 trong trạng thái ON, tín hiệu tại D sẽ đi qua TG1 và các cổng NOT trong mạch đến ngõ ra Q nhưng sẽ bị chặn lại ở TG2 đang trong trạng thái OFF (hình 2. Tín hiệu tại TG2 gọi là tín hiệu đã được chốt.