Skip to content
Play overlay
Preview this course

VLSI, PLC, Microcontrollers, and Assembly Language Course

CMOS, VLSI, PLC, Microcontrollers, MSP430, Assembly Language, MS DOS & Windows Programming, High-Level Language



Save 88%
£12 inc VAT (was £100)
Offer ends 31 May 2022
Study method
Online, On Demand What's this?
22.6 hours
No formal qualification
Optional extras

Digital certificate included in price, Digital certificate included in price

5 students purchased this course

Add to basket or enquire


Uplatz provides this comprehensive course on VLSI, PLC, Microcontrollers, and Assembly Language. It is a self-paced course with recorded video lectures.

The technique of producing an integrated circuit (IC) by merging thousands of transistors into a single chip is known as very-large-scale integration (VLSI). When complicated semiconductor and communication technologies were being developed in the 1970s, VLSI was born. A VLSI device is used as the microprocessor. The electronics sector has grown at a breakneck pace in recent decades, thanks to fast developments in large-scale integration technologies and system design applications. The number of uses of integrated circuits (ICs) in high-performance computing, controls, telecommunications, image and video processing, and consumer electronics has increased dramatically since the introduction of very large-scale integration (VLSI) designs.

The PLC collects data from linked sensors or input devices, processes it, and then activates outputs based on preset settings. A PLC can monitor and record run-time data such as machine productivity or operating temperature, start and stop operations automatically, create alerts if a machine fails, and more, depending on the inputs and outputs. Programmable Logic Controllers (PLCs) are a versatile and reliable control solution that may be used in practically any situation.

An assembly language is a low-level programming language designed to interface directly with the hardware of a computer. Assembly languages, unlike machine language, which uses binary and hexadecimal letters, are intended to be read by people. In contrast to most high-level programming languages, which are often portable across many platforms, assembly language is a low-level programming language for a computer or other programmable device that is specialised to a single computer architecture. A utility software known as an assembler, such as NASM, MASM, and others, converts assembly language into executable machine code.

VLSI chips are used in practically all digital systems nowadays, therefore knowing contemporary logic architecture is essential for chip manufacture. This course introduces students to the principles of back-end VLSI design as well as numerous computer-aided design (CAD) tools and processes.

Develop abstractions to design and reason about complicated digital systems by learning about MOS transistors and IC manufacturing. Learn how to model and synthesise gates, as well as how to validate complicated hardware and software systems. Examine the most important aspects of VLSI design, including as manufacturing and layout, timing, power reduction, testing, and debugging.

A microcontroller is a compact integrated circuit designed to govern a specific operation in an embedded system. A typical microcontroller includes a processor, memory and input/output (I/O) peripherals on a single chip.

Sometimes referred to as an embedded controller or microcontroller unit (MCU), microcontrollers are found in vehicles, robots, office machines, medical devices, mobile radio transceivers, vending machines and home appliances, among other devices. They are essentially simple miniature personal computers (PCs) designed to control small features of a larger component, without a complex front-end operating system (OS).

How do microcontrollers work?

A microcontroller is embedded inside of a system to control a singular function in a device. It does this by interpreting data it receives from its I/O peripherals using its central processor. The temporary information that the microcontroller receives is stored in its data memory, where the processor accesses it and uses instructions stored in its program memory to decipher and apply the incoming data. It then uses its I/O peripherals to communicate and enact the appropriate action.

Microcontrollers are used in a wide array of systems and devices. Devices often utilize multiple microcontrollers that work together within the device to handle their respective tasks.

For example, a car might have many microcontrollers that control various individual systems within, such as the anti-lock braking system, traction control, fuel injection or suspension control. All the microcontrollers communicate with each other to inform the correct actions. Some might communicate with a more complex central computer within the car, and others might only communicate with other microcontrollers. They send and receive data using their I/O peripherals and process that data to perform their designated tasks.


22h 37m
    • 1: CMOS Technology 43:21
    • 2: VLSI Introduction 19:19
    • 3: Basics of PLC Preview 28:20
    • 4: PLC Programming 14:41
    • 5: Ladder Diagram 31:38
    • 6: SCADA 14:13
    • 7: Assembly Language for Intel based Computers 36:53
    • 8: Assembly Language Fundamentals 53:59
    • 9: Procedures 19:37
    • 10: Conditional Processing 30:20
    • 11: Integer Arithmetic 28:38
    • 12: Advanced Procedures, Strings, Arrays 42:25
    • 13: Structures and Macros 29:42
    • 14: 32-bit Windows Programming 31:41
    • 15: High Level Language Interface and 16-bit MS DOS Programming 39:31
    • 16: Disk Usage 18:05
    • 17: Introduction to Microcontrollers 50:06
    • 18: MSP430 Microcontroller - part 1 44:40
    • 19: MSP430 Microcontroller - part 2 31:01
    • 20: MSP430 Microcontroller - part 3 31:13
    • 21: MSP430 Microcontroller - part 4 29:10
    • 22: AVR Microcontroller 27:18
    • 23: Computer Systems 52:21
    • 24: Part 1 - Assembly Language using ATMEL AVR Microcontroller 59:35
    • 25: Part 2 - Assembly Language using ATMEL AVR Microcontroller 34:55
    • 26: Part 3 - Assembly Language using ATMEL AVR Microcontroller 22:11
    • 27: Part 4 - Assembly Language using ATMEL AVR Microcontroller 49:01
    • 28: Part 5 - Assembly Language using ATMEL AVR Microcontroller 36:00
    • 29: Part 6 - Assembly Language using ATMEL AVR Microcontroller 24:14
    • 30: Part 7 - Assembly Language using ATMEL AVR Microcontroller 44:20
    • 31: Part 8 - Assembly Language using ATMEL AVR Microcontroller 44:16
    • 32: Part 9 - Assembly Language using ATMEL AVR Microcontroller 33:14
    • 33: Part 10 - Assembly Language using ATMEL AVR Microcontroller 39:40
    • 34: Part 11 - Assembly Language using ATMEL AVR Microcontroller 37:05
    • 35: Part 12 - Assembly Language using ATMEL AVR Microcontroller 27:44
    • 36: Part 13 - Assembly Language using ATMEL AVR Microcontroller 19:41
    • 37: Part 14 - Assembly Language using ATMEL AVR Microcontroller 22:50
    • 38: Part 15 - Assembly Language using ATMEL AVR Microcontroller 29:32
    • 39: Part 16 - Assembly Language using ATMEL AVR Microcontroller 34:31
    • 40: Part 17 - Assembly Language using ATMEL AVR Microcontroller 49:50

Course media


VLSI, PLC, Microcontrollers, and Assembly Language - Course Curriculum

  1. CMOS Technology
  2. VLSI Introduction
  3. Basics of Programmable Logic Controller (PLC)
  4. PLC Programming
  5. Ladder Diagram
  6. Supervisory Control and Data Acquisition (SCADA)
  7. Assembly Language for Intel based Computers
  8. Assembly Language Fundamentals
  9. Procedures
  10. Conditional Processing
  11. Integer Arithmetic
  12. Advanced Procedures, Strings, Arrays
  13. Structures and Macros
  14. 32-bit Windows Programming
  15. High Level Language Interface and 16-bit MS DOS Programming
  16. Disk Usage
  17. Introduction to Microcontrollers
  18. MSP430 Microcontroller
  19. AVR Microcontroller
  20. Computer Systems
  21. Assembly Language using ATMEL AVR Microcontroller

Microcontroller Features

A microcontroller's processor will vary by application. Options range from the simple 4-bit, 8-bit or 16-bit processors to more complex 32-bit or 64-bit processors. Microcontrollers can use volatile memory types such as random access memory (RAM) and non-volatile memory types -- this includes flash memory, erasable programmable read-only memory (EPROM) and electrically erasable programmable read-only memory (EEPROM).

Generally, microcontrollers are designed to be readily usable without additional computing components because they are designed with sufficient onboard memory as well as offering pins for general I/O operations, so they can directly interface with sensors and other components.

Microcontroller architecture can be based on the Harvard architecture or von Neumann architecture, both offering different methods of exchanging data between the processor and memory. With a Harvard architecture, the data bus and instruction are separate, allowing for simultaneous transfers. With a Von Neumann architecture, one bus is used for both data and instructions.

When they first became available, microcontrollers solely used assembly language. Today, the C programming language is a popular option. Other common microprocessor languages include Python and JavaScript.

MCUs feature input and output pins to implement peripheral functions. Such functions include analog-to-digital converters, liquid crystal display (LCD) controllers, real-time clock (RTC), universal synchronous/asynchronous receiver transmitter (USART), timers, universal asynchronous receiver transmitter (UART) and universal serial bus (USB) connectivity. Sensors gathering data related to humidity and temperature, among others, are also often attached to microcontrollers.

Microcontroller applications

Microcontrollers are used in multiple industries and applications, including in the home and enterprise, building automation, manufacturing, robotics, automotive, lighting, smart energy, industrial automation, communications and internet of things (IoT) deployments.

One very specific application of a microcontroller is its use as a digital signal processor. Frequently, incoming analog signals come with a certain level of noise. Noise in this context means ambiguous values that cannot be readily translated into standard digital values. A microcontroller can use its ADC and DAC to convert the incoming noisy analog signal into an even outgoing digital signal.

The simplest microcontrollers facilitate the operation of electromechanical systems found in everyday convenience items, such as ovens, refrigerators, toasters, mobile devices, key fobs, video game systems, televisions and lawn-watering systems. They are also common in office machines such as photocopiers, scanners, fax machines and printers, as well as smart meters, ATMs and security systems.

More sophisticated microcontrollers perform critical functions in aircraft, spacecraft, ocean-going vessels, vehicles, medical and life-support systems as well as in robots. In medical scenarios, microcontrollers can regulate the operations of an artificial heart, kidney or other organs. They can also be instrumental in the functioning of prosthetic devices.

Microcontrollers vs. microprocessors

The distinction between microcontrollers and microprocessors has gotten less clear as chip density and complexity has become relatively cheap to manufacture and microcontrollers have thus integrated more "general computer" types of functionality. On the whole, though, microcontrollers can be said to function usefully on their own, with a direct connection to sensors and actuators, where microprocessors are designed to maximize compute power on the chip, with internal bus connections (rather than direct I/O) to supporting hardware such as RAM and serial ports. Simply put, coffee makers use microcontrollers; desktop computers use microprocessors.

Microcontrollers are less expensive and use less power than microprocessors. Microprocessors do not have built-in RAM, read-only memory (ROM) or other peripherals on the chip, but rather attach to these with their pins. A microprocessor can be considered the heart of a computer system, whereas a microcontroller can be considered the heart of an embedded system.

What are the elements of a microcontroller?

The core elements of a microcontroller are:

  • The processor (CPU) -- A processor can be thought of as the brain of the device. It processes and responds to various instructions that direct the microcontroller's function. This involves performing basic arithmetic, logic and I/O operations. It also performs data transfer operations, which communicate commands to other components in the larger embedded system.
  • Memory -- A microcontroller's memory is used to store the data that the processor receives and uses to respond to instructions that it's been programmed to carry out. A microcontroller has two main memory types:
    1. Program memory, which stores long-term information about the instructions that the CPU carries out. Program memory is non-volatile memory, meaning it holds information over time without needing a power source.
    2. Data memory, which is required for temporary data storage while the instructions are being executed. Data memory is volatile, meaning the data it holds is temporary and is only maintained if the device is connected to a power source.
  • I/O peripherals -- The input and output devices are the interface for the processor to the outside world. The input ports receive information and send it to the processor in the form of binary data. The processor receives that data and sends the necessary instructions to output devices that execute tasks external to the microcontroller.

This course is for people who wish to master the fundamentals of assembly programming from the ground up. This lesson will provide you with a solid foundation in assembly programming, allowing you to go to greater levels of skill. You need have a basic grasp of computer programming terms before starting this lesson. A solid familiarity of any programming language can aid you in grasping Assembly programming ideas and advancing quickly through the learning process.

Who is this course for?



Passion and determination to achieve your goals!

Career path

  • Microcontroller based Embedded Systems Developer
  • Embedded Software Engineer (Microcontrollers)
  • Principal Software Engineer
  • Senior Systems Engineer
  • FPGA/ASIC Design Engineer
  • Engineering Manager (VLSI)
  • VLSI Design Team Leader
  • Microcontroller & PLCs Programmer
  • Electronics Engineer
  • Digital Systems Designer
  • CMOS & VLSI Specialist
  • Microprocessor & Microcontroller Engineer
  • Lead Systems Engineer

Questions and answers

Currently there are no Q&As for this course. Be the first to ask a question.

Optional extras

Digital certificate

Reed courses certificate of completion is included in course price

Additional information:

Will be downloadable when all lectures have been completed

Digital certificate

Certificate of completion is included in course price

Additional information:

Course Completion Certificate by Uplatz


Currently there are no reviews for this course. Be the first to leave a review.


What does study method mean?

Study method describes the format in which the course will be delivered. At Reed Courses, courses are delivered in a number of ways, including online courses, where the course content can be accessed online remotely, and classroom courses, where courses are delivered in person at a classroom venue.

What are CPD hours/points?

CPD stands for Continuing Professional Development. If you work in certain professions or for certain companies, your employer may require you to complete a number of CPD hours or points, per year. You can find a range of CPD courses on Reed Courses, many of which can be completed online.

What is a ‘regulated qualification’?

A regulated qualification is delivered by a learning institution which is regulated by a government body. In England, the government body which regulates courses is Ofqual. Ofqual regulated qualifications sit on the Regulated Qualifications Framework (RQF), which can help students understand how different qualifications in different fields compare to each other. The framework also helps students to understand what qualifications they need to progress towards a higher learning goal, such as a university degree or equivalent higher education award.

What is an ‘endorsed’ course?

An endorsed course is a skills based course which has been checked over and approved by an independent awarding body. Endorsed courses are not regulated so do not result in a qualification - however, the student can usually purchase a certificate showing the awarding body’s logo if they wish. Certain awarding bodies - such as Quality Licence Scheme and TQUK - have developed endorsement schemes as a way to help students select the best skills based courses for them.