Term
| how to define performance? |
|
Definition
|
|
Term
| how can you improve performance? |
|
Definition
1. increase work 2. decrease time |
|
|
Term
| write an equation for "Big is n% greater than Small" |
|
Definition
1. (performance big - performance slow)/performance slow 2. (time slow - time fast)/time fast |
|
|
Term
| write an equation for Tavg |
|
Definition
|
|
Term
| In order to optimize, what are two things that needs to be taken account? |
|
Definition
| run time and frequency of occurence |
|
|
Term
| what's a general rule to improve performance? |
|
Definition
| make the common case faster |
|
|
Term
| give an equation for time |
|
Definition
| cycle * clockPeriod = numInstr*CPI*clockPeriod |
|
|
Term
|
Definition
|
|
Term
| what does SPECint measure? |
|
Definition
|
|
Term
| if performance increase by 3 time every 12 months, give an equation of performance at t month |
|
Definition
|
|
Term
| What is functional validation? |
|
Definition
|
|
Term
| What is functional verification? |
|
Definition
|
|
Term
| What is formal verification? |
|
Definition
| functional verification for every possible inputs |
|
|
Term
| What is performance validation? |
|
Definition
|
|
Term
| What is power validation? |
|
Definition
|
|
Term
| What is equivalence verification? |
|
Definition
| design generated by synthesis tool has same behavior as RTL code? |
|
|
Term
| what is timing verification? |
|
Definition
| all paths meet time constraints? |
|
|
Term
|
Definition
|
|
Term
| if we have n bits of inputs and k bits of flops, how many different cases when doing functional verification? |
|
Definition
|
|
Term
| What are two characteristics for test bench? |
|
Definition
1. no inputs or outputs 2. test bench only used for primary input and output |
|
|
Term
|
Definition
| when check behavior of internal signals |
|
|
Term
| What is DUT in test bench? |
|
Definition
| circuit that you are checking |
|
|
Term
| What is stimulus in test bench? |
|
Definition
|
|
Term
| What is specification in test bench? |
|
Definition
| describes desired behavior of implementation |
|
|
Term
| What is check in test bench? |
|
Definition
| checks whether implementation obeys specification |
|
|
Term
| Draw a diagram for a normal test bench |
|
Definition
|
|
Term
| Draw a diagram for reference model test bench |
|
Definition
|
|
Term
| When are reference model test bench used? |
|
Definition
check if output has a specific value e.g DSP filters, instruction decoder, datapath |
|
|
Term
| Draw a diagram for relational test bench |
|
Definition
|
|
Term
| When are relational test bench used? |
|
Definition
based on relationship of input and output e.g carry-save adders, control circuits |
|
|
Term
| Datapath circuits are suitable for what kind of test bench? What about control circuits? |
|
Definition
Datapath = reference Control = relational |
|
|
Term
| Why control circuits are often more challenging to verify? |
|
Definition
1. has internal signals which test bench can't check 2. bugs can exists in any clock cycle and test bench doesn't know which cycle the bug is at |
|
|
Term
| How to resolve the issue of bug at certain clock cycle? |
|
Definition
|
|
Term
| What is the goal of coverage monitor |
|
Definition
| certain event is exercised in a simulation run or not |
|
|
Term
| What's the pro and con of using function in VHDL? |
|
Definition
Pro: flexible con: verbose |
|
|
Term
|
Definition
| the difference in arrival times for the same clock edge at different flop |
|
|
Term
|
Definition
difference in arrival times for the same clock edge at different levels of interconnect along the clock tree clock latency doesn't affect the limit on minimum clock eriod |
|
|
Term
|
Definition
| difference between actual clock period and ideal clock period |
|
|
Term
| what are 2 causes of clock jitter? |
|
Definition
1) tmp and voltage variations over time 2) different manufacturer |
|
|
Term
| What is the difference between behavior of flop and latch? |
|
Definition
| flop is edge sensitive and latch is level sensitive |
|
|
Term
| When does setup time occur? |
|
Definition
|
|
Term
| When does hold time occur? |
|
Definition
|
|
Term
|
Definition
| delay from the clock edge to when the output is guaranteed to be stable |
|
|
Term
| What is propagation delay? |
|
Definition
| time it takes a signal to travel from the source flop to destination flop |
|
|
Term
| What's the equation for propagation delay? |
|
Definition
| load delay + interconnect delay |
|
|
Term
|
Definition
| combinational gates between the flops |
|
|
Term
| what is interconnect delay? |
|
Definition
| wires between gates and flops |
|
|
Term
| that's the equation for clock period? |
|
Definition
| clockP > skew + jitter + Tco + propagation + setup |
|
|
Term
| is the equation for clock period independent of hold time? |
|
Definition
|
|
Term
| what's the equation for hold constraint? |
|
Definition
| skew + jitter + Tho < Tco + prop |
|
|
Term
| when does setup violation occur? |
|
Definition
| clock-to-Q + prop delay is too big |
|
|
Term
| when does hold violation occur? |
|
Definition
| before hold time ends, data changes |
|
|
Term
| what 3 things needs to be identified to calculate setup and hold time? |
|
Definition
1. how data is stored when not connected to input 2. the gates that the clock uses to cause the stored data to drive the output 3. the gates that the clock uses to cause the input to drive the output |
|
|
Term
| when does setup start? when does it end? |
|
Definition
start: when data start to propagate end: when data finish to propagate |
|
|
Term
| when can data, w/a, occur? |
|
Definition
at t=0, input has w and output has a then at t=1, output will have w/a |
|
|
Term
| when does hold start? when does it end? |
|
Definition
start: when data start to enter key gate end: when the other data start to enter key gate |
|
|
Term
| what's common about start and end of hold time and setup time? |
|
Definition
start: there is a key gate which one of the signal starts to enter end:both signals enter key gate |
|
|
Term
|
Definition
| the slowest path on the chip between flops or flops and pins. |
|
|
Term
| what's the effect of critical path |
|
Definition
|
|
Term
|
Definition
change in input doesn't affect change in output. makes people believe they are critical path, but in reality, it's not a critical path |
|
|
Term
| what's an algorithm to determine the critical path? |
|
Definition
1. find longest path ignoring false path 2. test if the path is false path or not 3. choose next longest path if it's false path 4. do a correct, complete, and complex algorithm to find the critical path in a circuit |
|
|
Term
| need to put rest of the questions after understanding rest of chapter 5 |
|
Definition
|
|
Term
| what's the equation for energy? |
|
Definition
|
|
Term
| what's the equation for power given v and i? |
|
Definition
|
|
Term
| when we talk about power, what is it usually about? |
|
Definition
|
|
Term
| when we talk about energy, what is it usually about? |
|
Definition
| battery life or energy costs |
|
|
Term
| what's equation for "power efficiency"? |
|
Definition
|
|
Term
| how to calculate energy given v and AH? |
|
Definition
| convert hour to second, keep in mind ampere is in I/s |
|
|
Term
| clock speed is proportional to what? |
|
Definition
|
|
Term
| what is the equation for power for hardware? |
|
Definition
| switch power + short power + leakage power |
|
|
Term
| how much energy is needed to charge a capacitor? |
|
Definition
|
|
Term
| what's the charged energy on a capacitor? |
|
Definition
|
|
Term
|
Definition
| frequency at which inverter goes through complete charge-discharge cycle |
|
|
Term
|
Definition
| average number of times the signal switches from 0->1 or 1->0 per clock cycle |
|
|
Term
|
Definition
| 0.5*activity factor*clock speed |
|
|
Term
| what's average switching power in terms of f'? |
|
Definition
| f' * energy needed to charge capacitor to v |
|
|
Term
| what's equation for short circuit power? |
|
Definition
| activity factor * clock speed * timeshort * power needed to store to capacitor |
|
|
Term
|
Definition
|
|
Term
| what's leakage current proportional to? |
|
Definition
| exp[(-q*voltThresh)/(k*T)] |
|
|
Term
| what two categories you can divide power reduction to? |
|
Definition
|
|
Term
| what are parameters to reduce power in analog level? |
|
Definition
| capacitance, resistance, voltage |
|
|
Term
| what are parameters to reduce power in digital level? |
|
Definition
| capacitance, activity factor, clock frequency |
|
|
Term
| what are 5 techniques for reducing power in analog level? |
|
Definition
| dual-VDD, dual-Vt, exotic circuits, adiabatic circuits, clock trees |
|
|
Term
| what are 5 techniques for reducing power in digital level? |
|
Definition
| multiple clocks, clock gating, data encoding, glitch reduction, asynchronous circuits |
|
|
Term
| what is dual-VDD power reduction technique? |
|
Definition
| two different supply voltages. High voltage for performance-critical portions for design, low voltage for remainder of the circuit |
|
|
Term
| what is dual-Vt power reduction technique? |
|
Definition
| two different threshold voltages. low threshold voltage for high performance, high threshold voltage for low performance |
|
|
Term
| what's exotic circuits in power reduction technique? |
|
Definition
| special circuits that run high frequency while minimizing power |
|
|
Term
| what's adiabatic circuits in power reduction technique? |
|
Definition
| special circuits that consumes power on 0->1 transitions but not 1->0 transitions. Bad thing is this sacrifices performance |
|
|
Term
| what's clock trees in power reduction technique? |
|
Definition
| up to 30% of total power can be consumed in clock generation and clock tree |
|
|
Term
| what's multiple clocks in power reduction technique? |
|
Definition
| high speed clock in high performance circuit, low speed close for remainder of circuit |
|
|
Term
| what's clock gating in power reduction technique? |
|
Definition
| turn off portion of clock when not needed |
|
|
Term
| what's data encoding in power reduction technique? |
|
Definition
| gray coding vs one-hot vs fulling encoded |
|
|
Term
| what's glitch reduction in power reduction technique? |
|
Definition
|
|
Term
| what's asynchronous circuits in power reduction technique? |
|
Definition
|
|
Term
| what's power proportional to for hardware? |
|
Definition
|
|
Term
| what will happen to hardware when we increase the supply voltage? |
|
Definition
| decrease delay through a circuit |
|
|
Term
| what's max clock speed proportional to in terms of Vsupply and Vthresh? |
|
Definition
|
|
Term
| what will happen to Ileak as Vthresh is decreased? |
|
Definition
|
|
Term
| what is power proportional to in terms of Ileak? |
|
Definition
|
|
Term
| what's effectiveness of clock gating? |
|
Definition
| % of time there is invalid data, clock if off |
|
|
Term
| what's %valid for clock gating? |
|
Definition
| % of clock cycles with valid data in circuit the clock must be toggling |
|
|
Term
| what's %clk for clock gating? |
|
Definition
| percentage of clock cycles that clock toggles |
|
|
Term
| what's equation for effectiveness of clock gating? |
|
Definition
|
|
Term
| what happens to effectiveness of clock gating if clock toggles only when there is valid data? |
|
Definition
|
|
Term
| what happens to effectiveness of clock gating if clock always toggles? |
|
Definition
|
|
Term
| in clock gating, what happens if %clk < %valid? |
|
Definition
| turning off clock when shouldn't |
|
|
Term
| what's the new activity factor given clock gating? |
|
Definition
|
|