130 likes | 253 Views
CompE 460 Real-Time and Embedded Systems. Lecture 2 – Interview and Design Process. Agenda. Prayer/Thoughts Job Interview for Erilyn Engineering Lab #2 Microprocessor Selection. Erilyn Engineering. Job Interview. Erilyn Engineering. Job Expectations First Assignment
E N D
CompE 460 Real-Time and Embedded Systems Lecture 2 – Interview and Design Process
Agenda Prayer/Thoughts Job Interview for Erilyn Engineering Lab #2 Microprocessor Selection
Erilyn Engineering • Job Interview
Erilyn Engineering • Job Expectations • First Assignment • Processor Selection
Microprocessor Selection • What are some of the things you need to consider when selecting a processor or controller? • Performance • Price • Power Efficiency • Run mode • Sleep mode • Quality of Development Tools • Compatibility with earlier processors • Vendor Roadmap • Life Expectancy • Military Versions • Availability as stand-alone chip or licensable core • Flexibility • FPGA fabric, reconfigurable?
Processor Performance • Benchmarks • Lots of Benchmarks out there (some good, some very misleading) • MIPS – Millions of instructions per second • Drystone • iCOMP – encompasses performance components that represent integer math, floating math, graphics and video • STREAM - measures sustainable memory bandwidth and the corresponding computation rate for simple vector kernels. It is similar to a number of applications - streaming data, such as video editing, format conversion of audio and video, and encryption primitives. • EEMBC
Development Tools Support • OS’s • Footprint • Performance • Real Time? • Libraries • Services • IDE • Device Drivers • Compilers • Processor Specific Libraries • HW/SW Debugging Tools • Performance Tools
Choices of Microprocessors A wide range of microprocessors and/or microcontrollers are available • Processors vary in • word size/bus width • internal memory and peripherals • Timers, I/O ports, DMA channels, etc. • supported external memory • Power/Performance • Many sizes and configurations available, with obvious cost and performance tradeoffs • Feature Set directed to specific applications • Math co-processors • Streaming data
Many, Many, Many • Dozens of companies who make processors http://bwrc.eecs.berkeley.edu/CIC/industry_hl.html • Hundreds of different processors architectures • x86, Mips, ARM, X-Scale, Itanium, 8052, DSP, 3d Graphics Engines • Thousands of different Processors • 8088, 8086, 80186, 80286, Pentium ….. • Arm710, Arm720, Arm920, Arm 922, Arm1020 ….. • X-Scale – PXA255, PXA262, PXA265, PXA272 ….. • Itanium – Itanium1, Itanium2 900MHz, Itanium2 1.3 GHz ….. • MIPS324K, MIPS324KE, MIPS645K, ….. • PIC16F876A, PIC16F873A, PIC16C94, ….. • DSP – 56000, 56200, 56F8300, TMS320, ….. • 3D graphics engines – ATI Radeon9600, NVidia GEForce 6800 …..
Interview Questions • Why do you want to work for Erilyn Engineering? What do you expect from us? (looking for mutual benefit) • We have lots of work to do here. What if your assignment takes you longer to complete than expected? What will you do? (looking for good communication and commitment to task) • Can you give me an example of when you worked nights and weekends? (looking for commitment to task) • What if we have a critical deliverable when your wife is having a Birthday? (looking for balancing priorities) • Have you ever worked in a team environment? If so, give me a good example of how a team should work together? How about a bad example? (looking for positive team player) • What do you do if someone on the team is not completing their assignments (looking for good communication, ability to take on responsibility, looking for proactive solutions to problems – do not hide from problems – confront them)
Interview Questions • Write a short C program with a global variable x and a local int variable array y of 4 values int x; myfunc (void) { int y[4]; } • What is the difference between x and y? • Scope • Where are x and y physically located? • X in data mem, y on stack • Add pointer to int z and have it point to y; Int *z; Z = &y; • If I add the function z++, what does it mean? • z points to y[1]
Interview Questions • Give truth table for a 2 input NAND gate • Give truth table for 2 input XOR gate • Construct an XOR function using NAND gates