about pic emulators

hi! I am a senior student in computer science. In our senior design course, we are supposed to develop a pic emulator for the card that is used in embedded course in our department. This card uses 16F877 pic. Since we're not experienced in this area, we don't know what should a pic emulator has. We want to know the pros and cons of pic emulators at present. If someone can help us, we will be glad. Thank you...

Reply to
Loading thread data ...

Are you designing an in-circuit emulator or are you designing a piece of PC software that will run PIC programs in the way that your card would (more likely called a simulator)?

If it is an in-circuit emulator then one pro is that you can run all your programs without having to program a part but one downside is that the emulator may not behave exactly as a PIC would.

Reply to
Tom Lucas

First off, I'd imagine that you would be already well-versed in what is being required of you in the course. Although at your level, you should be beyond the need to be "led around by the nose," it's also the usual case that you aren't thrust into something without good class preparations.

It's hard to tell from your far too short description of work, but the term 'simulator' (which may normally be a computer science course task) is usually limited to software-only that emulates the device. This simulates the core ALU functions and general instruction set but either may or may not simulate the peripherals found on it. That would be part of the spec and only you know what that is.

The term 'emulator' is sometimes a specialized word meaning a device that includes hardware and software and can replace the functionality of some component (such as a micro) but can provide far more control and information than the basic device itself does. For example, an emulator may commonly provide a trace buffer holding perhaps many thousands of individual cycle steps that you can peruse later on or trace backwards through that precedes some event. It also can be a more general (blunted or less precise) term that can be nothing more than a broadening of the idea of 'emulation' that I just mentioned earlier with regards to simulators. So these terms can be conflated, unfortunately.

I shouldn't need to say all this, as you should already know what was meant in the department's curriculum. My own reading of your phrasing above would sound to me like, "Build a system composed of hardware and software that can replace the function of the existing card used in your department's embedded course and be used for similar purposes and provides certain emulator features such as stop/start, breakpointing on value or location, etc." But since you said "computer science" course, I'd tend to imagine you just need to simulate the PIC and not emulate the card. Now if it is simulation alone, it may still include the fact that there are specific functions on that card you haven't disclosed here but where your department still expects to be included in your simulation efforts. You may NOT need to exactly simulate all of the PIC peripherals on a cycle-by-cycle basis, but may really only need to simulate certain peripherals and only in the general sense of how they are connected to other hardware on that card.

Of course, none of us out here has any idea what you are talking about or should do.

So what's really up, here? If you can't be bothered to completely disclose what's going on or if you don't even know completely what you are being asked to do, it's going to put a huge burden on everyone else you are asking help of. Perhaps you want that, I don't know. But you should demonstrate a little something here, I think, before asking for help. Tell us what is going on. What you've said already is way too little. Unless all you want are a bunch of ignorant links to web pages -- but if that is all you want, you already have google.


Reply to
Jonathan Kirwan

Sorry for my mistake. You're right, I didn't explain my needs in the previous message. First of all, I am not a cs student in fact. Our department is computer engineering. But there is not a certain distinction between cs and ceng in our country's universities. We take some electronics courses besides cs courses. So, let me try to explain what is going on. To be able to do this, let me give the description of the project belove.

Emulator and Development Environment for CEng Embedded System Card

Aspects:GUI, digital electronics, compilers, system programming Description: CEng embedded system card is the card that is used in CEng 336 "Embedded Systems" course. It includes two PIC processors and various interfaces like LCD, Parallel, Serial, USB ports, smartcard reader, LED's etc. In this project, you will implement a software emulator, compiler and development environment for this card. Users will be able to compile, upload and debug their programs to the card. Also they will be able to test their programs in the virtual card emulated by software.

I hope the description is enough to describe what we need. If you can share your experiences, it will be very helpful for us. We are open to all ideas you'll give. But if you think that, I can find by google what I can reach by asking to you, i respect to your thoughts. thank you for your time.

Reply to

You failed to quote anything, which makes your article incomprehensible. All usenet articles should stand by themselves. That means quote enough of what you are answering so that your article makes sense. There is no reason to assume the recipient has ever seen, or ever will se, any previous articles in the thread. Google is not usenet, it is only a poor imitation of an interface to the usenet system.

Chuck F (cbfalconer at maineline dot net)
   Available for consulting/temporary embedded and systems.
Reply to

Be careful of the translation to English if is a simulation that runs on a PC it is a simulator. If it is a piece of hardware it is an emulator. a control program that runs part on the hardware an part on the PC would be a debugger.

The Simulator in not that hard. You know how the CPU works. Create data structures for the registers and Memory. Read an instruction from the simulated ROM and do what it says.

Debuggers require more work. Emulators, if you are asking it is out of your league. You create an equivilent chip in an ASIC or FPGA. Then add remote control hardware to it.

Reply to

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.