10 views

Uploaded by Kevin li

Computer architecture midterm

- VLSI Design Techniques
- EEC-553 CAD OF ELECTRONICS LAB FILE
- Operating Systems From 0 to 1
- LiU-Tek-Lic-2003-E_Hjalmarson
- Homework 3 - Solutions
- Mosfet
- VLSI_COURSE FILE NEW.docx
- AOI-22
- Cmos Logic Probe
- 008NANOTEC (2)
- CMOS Inverter Design
- The CMOS Inverter Explained
- 5ec2 Linear Integrated Circuits
- Assignment Mechatronics
- Ec1401 Vlsi Design
- Layout
- uw-ethesis_07192010
- AN OCTO CODING TECHNIQUE TO REDUCE ENERGY TRANSITION IN LOW POWER VLSI CIRCUITS.pdf
- Lecture 4b
- NAND NOR Gates

You are on page 1of 6

Paul Mellies

Exercise 1.

The current-voltage characteristic functions of three resistors A, B and C are de-

picted below.

i ( current )

A

120A

B

100A

80A

60A

40A

C

20A

0A V

0V 1V 2V 3V 4V 5V ( voltage )

1a. Compute for each of them the value of their resistance (in Ohm, noted ).

1b. We recall that when an NMOS transistor is in linear mode, the relationship

between the drain-source current i and the drain-source voltage V is given by the

formula

V

i = K ( VGS VTN ) V

2

where the threshold voltage VTN and the transductance parameter K are two con-

stants depending on the NMOS transistor, and where VGS is the gate-source voltage.

Give an explicit formula describing the resistance of the NMOS transistor at lin-

ear mode and at very low voltage, when V is close to zero and much smaller than

VGS VTN , as a function of K, VGS and VTN .

Exercise 2.

2a. Explain why one applies the following name convention for the three ports of

the NMOS and of the PMOS transistors, and more specifically, why one chooses to

reverse the names source and drain in the NMOS and PMOS transistors.

drain source

gate gate

source drain

NMOS transistor PMOS transistor

2b. Draw the CMOS inverter circuit consisting of an NMOS transistor and of a

PMOS transistor.

2c. Given the current-voltage characteristic functions for an NMOS transistor and

for a PMOS transistor depicted below, draw the voltage-voltage transfer function of

the corresponding CMOS inverter. Note that we take VDD = 5V.

i ( current )

180A 5V

160A

i ( current )

140A

120A 120A

4V

3.5V 100A

100A

80A 80A

3.5V

60A 3V 60A

40A 40A 3V

2.5V

20A 2V

20A 2.5V

1.5V 2V

0A V 0A V

0V 1V 2V 3V 4V 5V ( voltage ) 0V 1V 2V 3V 4V 5V ( voltage )

with threshold 1 V with threshold 1.5 V

2d. Indicate on the voltage-voltage transfer function of the CMOS inverter for which

states the NMOS and the PMOS transistors are in cut-off, in linear or in saturated

mode.

2e. Indicate (even approximatively) the positions of the two unity gain points of the

inverter. From this, deduce the input low and high voltages VIL and VIH as well as

the output low and high voltages VOL and VOH .

2f. From this, deduce the value of the noise margins NML and NMH for low and high

voltages.

2g. Suppose that the NMOS transistor is replaced by a resistor R with the following

current-voltage characteristic function:

i ( current )

180A

160A

140A

120A

100A

80A

60A

40A

20A

0A V

0V 1V 2V 3V 4V 5V ( voltage )

Resistor

One obtains in this way the following inverter:

V

DD

A PMOS transistor

resistor R

GND

2h. Draw the voltage-voltage transfer function associated to the inverter just con-

structed.

2i. Indicate on the voltage-voltage transfer function of the inverter on which states

the PMOS transistor is in cut-off, in linear or in saturated mode.

Exercise 3.

3a. Draw a ternary NAND gate using a CMOS circuit.

3b. Remember that a minority gate is a logical gate with three inputs A, B, C and

one output Y whose value is 1 precisely when there is a minority of input ports (that

is, zero or one input port, not two or three) whose value is equal to 1. Draw a minority

gate using a CMOS circuit.

3c. Can you draw the minority gate with only 5 NMOS transistors and 5 PMOS

transistors?

Exercise 4.

4. Can you find a simple argument explaining why the zincblende lattice structure

of the Gallium Arsenic

Ga gallium of valence 3

As arsenic of valence 5

is the superposition of two face-centered cubic (fcc) lattice structures of arsenic and

gallium:

fcc lattice of arsenic fcc lattice of gallium

Exercise 5.

Suppose that you bought an old computer at the Baoshan Lu Cybermart in Shanghai,

whose signed and unsigned integer are represented using 8 bits integers.

5a. What are the maximal and minimal unsigned integers which can be represented

as an 8-bits integer of the machine?

5b. What are the maximal and minimal signed integers which can be represented

as an 8-bits integer of the machine?

5c. Suppose that you add (as signed integers) the signed integer 97 to the signed

integer 88 in this old machine. Could you describe what happens?

Now, suppose that you have bought a slightly more recent computer whose signed

and unsigned integer are represented using 16 bits integers.

5d. What are the maximal and minimal unsigned integers which can be represented

as a 16-bits integer of the machine?

5e. What are the maximal and minimal signed integers which can be represented

as a 16-bits integer of the machine?

5f. Suppose you add (as signed integers) the signed integer 97 to the signed integer

88 in this more recent machine. Could you describe what happens?

Exercise 6.

6a. Translate the following decimal numbers into binary numbers:

6c. Translate the decimal numbers into signed binary numbers of length 12 bits:

6d. Explain what one means by sign extension from 16 bits to 32 bits.

Exercise 7.

In all this exercise, we consider the following structure type cell whose purpose is

to represent linked lists of character strings:

struct cell {

char *key;

struct cell *next;

};

7a. A bug is hidden in the code below of the function cons on a linked list of strings,

whose intended purpose is to append a string of characters string to a list list.

Can you detect the bug, explain what bad effect could happen at run time, and sug-

gest how to correct it?

struct cell *newlist;

newlist=(struct cell *)malloc(sizeof(struct cell *));

newlist->key = strdup(string);

newlist->next = list;

return newlist;

}

7b. A bug is hidden in the code below for the function free_list whose intended

purpose is to deallocate a linked list of strings. Can you find the bug and explain how

to correct it?

struct cell *ptr;

while (list != NULL){

ptr = list;

list = list->next;

free(ptr);

}

return;

}

7c. Worse, two bugs are hidden in the code below of the function clone_list whose

intended purpose is to clone a linked list of character strings, that is, produce two

equal but absolutely independent lists list and clone_list(list) in the end.

Can you find the bugs and explain how to correct them?

struct cell *clone_list(struct cell *list){

struct cell *head=(struct cell *)malloc(sizeof(struct cell));

struct cell *newlist=(struct cell *)malloc(sizeof(struct cell));

newlist = head;

while (list != NULL){

newlist->key = list->key;

if (list->next != NULL){

newlist->next = (struct cell *)malloc(sizeof(struct cell));

newlist = newlist->next;

}

else{

newlist->next = NULL;

}

list = list->next;

}

return head;

}

7d. More generally, explain why it makes more sense to think of a linked list as a

pointer to a structure of type cell than (more simply) as a structure of type cell.

Exercise 8.

8a. Explain in a sufficiently detailed way how the following implementation of

getchar works.

int getchar(void){

static char buf[BUFSIZ];

static char *bufp = buf;

static int n = 0;

n = read(0, buf, sizeof buf);

bufp = buf;

}

return (--n >= 0) ? (unsigned char) *bufp++ : EOF;

}

8b. Explain in particular how to parse the very last instruction of the function, and

what it does exactly.

Exercise 9.

9a. Can you explain (in a few words) the difference between a CISC and a RISC

architecture?

9b. Can you explain (in a few words) the notion of memory leak encountered in

our study of the programming language C ?

9c. Can you explain (in a few words) the difference between a file descriptor in

UNIX and a file pointer in C ?

- VLSI Design TechniquesUploaded byrajesh26july
- EEC-553 CAD OF ELECTRONICS LAB FILEUploaded byShitansh Nigam
- Operating Systems From 0 to 1Uploaded byKu Han
- LiU-Tek-Lic-2003-E_HjalmarsonUploaded bySamvel Yan
- Homework 3 - SolutionsUploaded byYahya Salam Saleh
- MosfetUploaded byfilibertoo
- VLSI_COURSE FILE NEW.docxUploaded byThomas Hill
- AOI-22Uploaded byBoyoyon Oyense
- Cmos Logic ProbeUploaded byfreddy0062
- 008NANOTEC (2)Uploaded bySreenath Reddy
- CMOS Inverter DesignUploaded byAhmad Kamil
- The CMOS Inverter ExplainedUploaded bySyed Mohammad Shabber Ahmad
- 5ec2 Linear Integrated CircuitsUploaded byDeepak Sharma
- Assignment MechatronicsUploaded byGeorgios Rokos
- Ec1401 Vlsi DesignUploaded byvlsi_satheesh
- LayoutUploaded byHarshad Kulkarni
- uw-ethesis_07192010Uploaded byilg1
- AN OCTO CODING TECHNIQUE TO REDUCE ENERGY TRANSITION IN LOW POWER VLSI CIRCUITS.pdfUploaded byesatjournals
- Lecture 4bUploaded byBernard Mkumbwa Jr.
- NAND NOR GatesUploaded byFelan Carlo Garcia
- SyllabusUploaded byPranav Kp
- mebmi-syllabusUploaded byisaac R
- treesa s2Uploaded byjayalakshmisnair
- Power+Reduction+MethodsUploaded bythatflamyguy2216
- Chapt05PPUploaded byMohammadAshraful
- EE360-PPUploaded byKartik Mittal
- BC a Novel on-chip CMOS Current Sensor Implemented by Switched Capacitors for a Current-mode Control DC-DC Buck ConverterUploaded byHoang Tuan
- pp1-16Uploaded bymaddy13rocks
- 2-7Yeung Negative CapacitanceUploaded byspiderman86
- Datasheet 82C84Uploaded byPaulo Victor

- CSC PaperUploaded byRakend Reddy
- C++ project for class 12 cbse aissce practicale on student management systemUploaded byDhruv Pandey
- COMPRO2 Course NotesUploaded byRaphael Feliciano
- C Language Presentation=Mohit Sharma,UdaipurUploaded byhiudaipur
- C Programming LabUploaded bynarender kumar
- Unix_Files_Rev_2_4Uploaded byvaibhav
- Link+ListUploaded bySri Harsha T
- Network Lab ManualUploaded bySuganya Periasamy
- cs-1511 project 8Uploaded byapi-302494844
- Graph Theory AlgorithmUploaded bynitishgalaxy
- Gadget Shop C++ ProjectUploaded byrahul
- C++ ManualUploaded byNancy
- Concatenating Two Linked Lists in CUploaded byPratikRoy
- Np ReportUploaded byrachit
- cUploaded byamitvit3
- c Data StructureUploaded bySuresh Kumar
- C Program Day-14Uploaded byeshamu
- defcon-17-bosse_eriksson-kernel_patching_on_osx.pdfUploaded byyacipo evyush
- BBB_30FPSUploaded byjunostar
- Lecture 5Uploaded bysanjay_dutta_5
- C++ program: All tasks .cppUploaded byKhalid Waleed
- comp339-Ch5Uploaded byOnurCan
- CBSE-CLASS-XII-COMPUTER-SCIENCE-PROJECT-FILE-ON-BOOK-SHOP-2010-EXAM.docUploaded byAbhinav Singh
- C for C++ ProgrammersUploaded byParas Dorle
- Biuret Test for ProteinsUploaded byPurplevision2003
- CProgrammingUploaded byRavindra Singh
- CBSE 2015 Question Papers for Class 12 Computer Science OutsideUploaded byAyush Mukhopadhyay
- CompilerUploaded byRaku Pau
- GettingStartedCpp PracticeUploaded byPham Trung Thanh
- C++ Programming HOW−TOUploaded bymanindarkumar