Wednesday, September 17, 2014

MIcro-processors & Micro-controllers-The context

As discussed here couple of days back, I have uploaded the first part of the course, named "The context". This is a set of about a dozen slides that talks about the context in which following topics will be discussed. By the very nature of these presentations, not many problems and real-life projects could be discussed in this or the following presentations (yes, I plans to update the existing presentations on the slideshare site). For that kind of coverage a coaching on-line, as discussed below will be suitable.

We discuss typical system environments and the system characteristics of systems using micro-processors and micro-controllers. The real major difference of a microprocessor with a microcontroller  is that a microprocessor is just the processor part of a system on a chip.You need external memory, I/O controllers and other resources to put together a system. The micro-controller on the other hand is a complete processor on a chip with some amount of non-volatile memory and a small amount of volatile memory. Depending on the resources available on the chip, you could implement a control processor on just a chip. These are ideal for low cost and minimal systems.

The design of these systems involve both hardware to designed and software to be developed. Obviously, you have to test the integrated system to make sure no problems pass on to your end customers.

If you would like to learn the microprocessor and microcontroller based designs, you could join the courses conducted by Debasis and benefit from personal interactions as well as the extensive examples and problem solving done on the Google hang-out sessions. Do feel free to contact me at Gmail: ddas15847@gmail.com or Skype: debasis.das1

Sunday, September 14, 2014


Updated presentations of Microprocessors Course
I have a set of presentations on Microprocessors and Micro-controllers course I used to take at a 4 year degree engineering college here in India. But, this was in the old classical style. I am going o upgrade the presentations, based on what I said here. The first set should appear in couple of days. Watch my page at Slideshare. More than 30, 000 readers visited my page so far! Thank you readers!!!

I am starting coaching sessions this semester for Engineering college students. There is no need to travel. This will be conducted over Google hangout/Google classrooms. Please contact me at ddas15847@gmail. com

I plan to do a lots of problem solving, answering questions and give you examples of solved test questions.

Thursday, September 11, 2014

Study of Microprocessors

Most often the courses prescribed at these technical universities use one particular microprocessor product.  8085 from Intel has been a very common example used to illustrate the microprocessors for the students. However, that is not a very appropriate one. It is so very old! Besides, it took some design shortcuts due to the packaging available (and the number of pins available on them). Thus, the architecture is unlike any classical processor and has the strange arrangements like the multiplexed address bus.It often complicates the understanding unnecessarily.

What I feel should happen is introduce a common template for the study. This template would fit most of the processors available and there are many available! The teacher then can introduce the details with reference to any particular processor and explain how it operates in each of the specific areas. For example, one could start with a high level description of how any processor integrates with rest of the hardware to work as a processor system together. One could then get into the bus and its details, how it integrates with memory system, how it works with the I/O system, instruction set and so on. More than one example should be looked into so that students get a very good feel of the tool that is being used just about anywhere! What do you think?

Thursday, August 7, 2014

Microprocessors and Micro-controllers

Four year degree engineering colleges offer a course on Microprocessors and micro-controllers. This is offered  in Computer Science as well as Electrical   engineering  undergraduate courses. That makes sense as, way things are, even mechanical engineering graduates need to understand about this wonderful devices that can let you do  many things easily.

The problem is these courses and the recommended text books use the venerable Intel 8085 as the example.The 8085 is one of the early microprocessors and has atypical bus structure. This is not representative of a standard micro. Being an early device it is not even very representative of most other microprocessors.

The difficulty for teachers is that many of them are nor very familiar with microprocessor devices. Their knowledge  is gleaned from the text books rather than from practical use and experience with these devices. What is needed here is a mix of practical experience coupled with computer science background they typically have.

Sunday, October 23, 2011

Schedule for the Remaining Presentations(EI 502)


24 Oct: 8251, 8257 and 8279
29 Oct: 8257 (2nd Group), 8253(2nd Group)
30 Oct: ADC and DAC



Sunday, September 11, 2011

Answers to Quiz of 11 Sep 2011

Here are the answers to the questions of yesterday's quiz.

1.       Why should the data bus be bi-directional? 
      The data bus is used to send and receive data between various units such as the processor, memory, other peripherals etc. Thus, the bus has to be bi-directional.      
          
       What are the functions of the address bus?
       The function of an address bus is to transmit the binary address values to all the devices connected to it. The memory and I/O devices then would be able to detect if there is a request fro data from them. The specific address on the bus will tell the devices if the request is addressed to it. (if the address requested falls in its range of addresses)

      What are the control signals used in the control bus of a 8085 microprocessor?
      There are three control signals on the control bus of 8085A. These are the read (RD\), write(WR\) and the Interrupt acknowledge(INTA\) signals.
     
       Define Fetch, Decode, Execute phases of an instruction.
      Fetch is the first phase of the instruction cycle. The value available in PC is used to address memory. Content of the memory at that address is brought into the instruction register. This is the fetch phase. Depending on if the instruction is a multi-byte one, there may be more fetch cycle before execution can start.  

      How would you define a byte, nibble, and a word?
     
      A byte is 8 bits, a nibble is 4 bits and word is 16 bits( could be more in some computers).

      Describe the sequence of operations that take place when a microprocessor is powered on?

      The microprocessor is reset. A reset out signal goes out to all other blocks in the system to reset them (get them into a known starting phase). The instruction pointer/program counter is set to an initial value (most often 0000H). The microprocessor starts an op code fetch to this initial address. Content of this location is brought in, IP/PC is incremented, instruction is decoded and executed, another opcode fetch is initiated. This cycle continues unless a HLT instruction is executed or an illegal instruction is executed. In case of an illegal instruction the system will hang.

      What are the functions fulfilled by an accumulator?

      It holds variables, results of intermediate calculations.
       
      What do you understand by a flag inside a microprocessor?
      Flags are single bit hardware memory (flip-flops) that store the various status of last calculation done by the ALU. For example Z-zero, C-carry, P-parity, etc. could some flags used. Please note, different microprocessors may have a different set of flags.

      The program counter and the stack pointer inside 8085 are 16 bit in length. Why so?
      The program counter and the stack pointer are required to hold an address value which can be anywhere in the given memory space of the microprocessor. 8085 memory space is addressed by 16 bit values and hence these two registers must be 16 bit wide. 
  
      How could the various operations happening inside the 8085 MPU be identified?
      There are three status signals in 8085 that indicate the kind of machine cycle operation happening inside the microprocessors. These signals are IO/M\, S1 and S0 and the control signals. Thus they are able to indicate up to eight different types of machine cycles happening inside. Some of the possible cycles are the op code fetch, memory read, memory write, I/O read, I/O write, Interrupt Ack etc.

Special Note: Those who took this test on 10 Sep, please note that the questions 1,2,3, 4 ,5,7 and 8 are 1 mark each, questions 6 and 10 are 3 marks each and question 9 is for 2 marks for a total of 15 marks.



Tuesday, August 23, 2011

[EI 502, IC 503, EI 405, EI 611] My Microprocessor Design Book is finally Ready!

My last blog post was about a series of questions. If you, seriously, wanted to solve those problems you could do well by reading this text I had published quite a while back. I finally have a electronic version that can be shared easily. Send me  a mail at ddas15847@gmail.com  and I will share it with you. I need to update the book a bit and orient it with the WBUT syllabus. This version, as is, has a lot of solved problems and a lot of exercises too. If you would like a copy of the Electronic version, I'll give you a discount of the price on the forthcoming revised version.(It's free for my current EI 502 students, of course!) The current Electronic version will cost you Rs.150 and when the revised version comes out you would be able to buy that at list price minus Rs.150. If you are paying in USD it is $3.99.