Hardware and Computing Technology Design of a Smart Phone using the Jade design tools that run in a browser
Link
to The Compute Technology in Your Smart Phone class files
- This course explored the different layers of computing
technology within your smartphone.
- We began at the hardware level, covering digital logic
beginning with transistors and moving up to finite state
machines.
- In the second part of the course, we built on this
material and discussed how computers are organized and
designed, including how the hardware and software
interact.
- Finally, we learned the basics of programming.
- Much of this was a review for me, but used a new tool,
and also was applied differently, since smart phone CPUs did
not exist at the time I learned these things.
- The three parts of this course gave a broad coverage of
the technology that enables your smartphone to
operate.
- Then, we moved beyond operation into performance,
exploring advanced methods to speed up computers,
including pipelining, multithreading, and multicore
processors.
- Finally, the course closed with an overview of actual
processors used in smartphones.
- Assignments throughout the course were tailored to build
your understanding and solve problems.
- Hands on work was done using the Jade simulation tool
that runs in your browser to design a small working
computer that functions using the same basic computing
principles as your smartphone.
- Part of this course was a review for me, having done
similar things to design CPUs in graduate school in the
1990s with the Mentor Graphics tools. In those days,
the designs I did went into further depth in were made up
of large teams of people doing individual parts that we
then integrated together, and tested with other lower
level tools as well. This course was a review of those
days in a sense, but applied to the applications CPU
engine of a smart phone.
- By the end of the course, we were able to:
- Describe how a smartphone processor works.
- Explain computer system design from binary
information to programming.
- Design a small working computer.
- Describe common techniques used to make computers
fast.