![]() |
![]() |
![]() |
||||
![]() |
|
|||
1. What is PromICE? PromICE is a memory emulation system. It is plugged into an embedded system under development in place of the systems memory chips (ROM, Flash, EPROM or SRAM etc.). During development of embedded software (or firmware), the code can be downloaded from the developers PC or other host computer and installed in the target ROM space within seconds. This eliminates the need to constantly reprogram memory chips to test revision of the firmware. PromICE also allows source-level debugging via the virtual serial channel in a memory socket when used with a monitor-based debugger. If you are in North America (United States, Canada and Mexico) you can purchase a PromICE directly from Grammar Engine. You can order by phone at 1-800-PROMICE, or 800-776-6423. If you are ordering from a different country, you can order from one of our distributors. Click here to view the list of distributors. 3. What size memories will PromICE emulate? Anything from 2KBytes to 4Mbytes can be emulated with the PromICE. Individual PromICE units are available in memory sizes as small as 128K x 8 (1 Mbit) and as large as 2M x 16 a total of 4 MByte or 32 Mbit of memory. Any PromICE unit can emulate a smaller memory by using a portion of its emulation memory. PromICEs can also be connected together (daisy-chained) with special cables or adapters to support larger memory spaces. 4. What speed memories will PromICE emulate? PromICE is available in standard access speeds of 90, 45 and 35ns. A PromICE will automatically emulate any memory slower than its rated access speed without any difficulties. 5. Will PromICE emulate flash memories? If flash is being used as a straight ROM replacement, where the embedded target executes code out of flash but does not issue flash command, then PromICE will work fine emulating flash. If the embedded target writes to flash i.e. reprograms flash or erases flash during any operation, PromICE will not emulate these functions, but will ignore the commands. Grammar Engine is developing a newer version of its product, FlashICE, which recognizes and responds to embedded flash commands. The FlashICE page provides more information on what is currently available, and what flash chips are supported. 6. Will PromICE emulate SRAM and DRAM? PromICE can be used to emulate SRAM, provided the correct access speed and cable for the SRAM footprint is used. PromICE will not emulate DRAM. 7. Can PromICE emulate memory in SIMMs or PCMCIA cards? Grammar Engine has the widest range of target connections available from any memory emulator. As part of that support, we have built adapters for an 80-pin SIMM (32 bit wide) adapter and a standard size 72-pin (16 bit wide) PCMCIA card. Each adapter will emulate 4 MByte of memory with 2 PromICE P2160s the SIMM card will emulate 4 MByte x 32 and the PCMCIA card 4 MByte x 16. 8. Does Grammar Engine provide software to communicate with PromICE? Yes. Each PromICE ships with LoadICE, a command line utility that is used to configure the PromICE to match the targets memory configuration and specify the communication between the PromICE and the host. LoadICE is then invoked either directly or as part of a batch or make file to load the target code into the PromICE and start it emulating. A graphical user interface is under development. 9. How does PromICE connect to the host? How fast will my code download to PromICE? PromICE comes standard with a DB9 serial port and a DB25 parallel port connections. These can be used separately or together for bi-directional communications. An optional Ethernet adapter is available that connects to the serial and parallel port of PromICE and allows PromICE to be used on an Ethernet network. When PromICE is loaded via the parallel port, code can be downloaded at up to 90 Kbytes/second among the fastest in the industry. The parallel port is supported on both PCs and UNIX workstations both Sun Microsystems and HP. PromICE can also be downloaded via an Ethernet network (Windows or UNIX) at 50Kbytes/second, and via a serial port at up to 57.6 K baud. 10. What file formats can I download to PromICE? Firmware can be downloaded into PromICE as binary images, Intel hex records (including extended hex) and Motorola S-records and many other somewhat obscure hex formats. LoadICE automatically recognizes the records format for the hex files. 11. Can PromICE be upgraded after I purchase it? Yes. PromICE can be returned to Grammar Engine at any time for an upgrade in memory size, memory speed or additional features. (Restrictions apply on units more than 5 years old.) The cost is typically the current difference in price plus a bench charge. Contact your sales representative or distributor for a quote on your specific requirements. 12. How does PromICE connect to the target? PromICE supports the widest range of target connections available anywhere in the industry. Cables are available for the traditional DIP footprint in 24, 28, 32, 40 and 42 pin sizes, and in a variety of lengths from 2" to 36", and for PLCC in 32 pin (8 bit) and 44 pin (16 bit) sizes. Our PLCC flex probes are not only the most durable, but are the only ones that do not destroy low profile surface mount PLCC sockets. PromICE supports over 300 different footprints of memories in the surface mount TSOP, PSOP and SSOP surface mount packages. Probes are available 2 ways: either to fit into Meritec sockets (that mount in the same footprint as the chip itself) or as a direct replacement of the part (soldered down). Either probe connects to an adapter board that provides signal conditioning and circuit protection on the way to the PromICE. The newest memory footprint is the reduced-size BGA: either a micro BGA (from Intel) or an FBGA (from AMD). Grammar Engine has probes under development for these parts as well. Contact your sales representative or distributor for details of support for specific parts. PromICE can also be connected to an embedded target via an 80 pin SIMM or a PCMCIA slot. And if embedded hardware has not been built yet, there is the option of adding a PromICE/Direct header, which allows direct access to PromICE and debugging features without the need for connecting via a memory socket at all. Finally, if a solution for the part you need to emulate is not available, we can adapt an existing cable or develop a custom solution for just about any situation. Contact Grammar Engine with the your application for a quote. 13. My targets memory is soldered down. Can I still use PromICE? If you are using surface mount memory that is permanently soldered to your target, it is not possible to "clip-over" a memory device the way an ICE can clip on a microprocessor. It is possible, however, to solder a flex probe in place of the memory, and connect a PromICE to emulate the memory. Grammar Engine can provide the service to solder the probes on your board and even remove the soldered-down memory and replace it with a probe. Contact your sales representative or distributor for more details. 14. Besides memory, what other signals can I connect to PromICE? What can I use them for? There are a few auxiliary signals provided by PromICE for target control. Most useful is the RESET signal out of the PromICE. It holds target in reset during download and releases when emulation is turned on, allowing target to boot. A WRITE signal can be connected to PromICE, allowing debuggers to set break-points and modify code. If you are using the virtual serial channel for debugging then the INTERRUPT signal out of PromICE can be connected to the target to simulate an interrupt driven UART. Both the RESET and INTERRUPT are available in high and low asserted states. 15. I have a low voltage target. Can I still use PromICE? Yes. Grammar Engine has developed a low voltage adapter that can be used with any emulation cable. When it is used, PromICE will emulate memories in the 2.7 to 3.3 volt voltage ranges. 16. My memory is internal to my microcontroller. Can I still use PromICE? Generally, PromICE requires an external memory socket to be used on an embedded target under development. If you are using a microcontroller with internal memory, two options are available to use PromICE: 1). Use a "break-out" external memory adapter available from various adapter companies. 2). Most micro-controllers provide a pin to select internal or external memory, use external memory for developing the firmware and use a port-replicator to recover your ports that are used for memory access. These options may not be available for all micros. 17. You dont have a cable for the memory I am using. Can you make a custom solution? Yes. Contact Grammar Engine with your specific requirements. We may have already developed the solution for another customer, or we can easily adapt our existing solutions to your requirements. 18. Can I use PromICE on my Ethernet network? Yes. Grammar Engine has an Ethernet adapter that will allow any PromICE to be used on a Windows or UNIX Ethernet network. This adapter works with both new and existing PromICEs and requires no modifications or special versions of PromICE. Any size or data width (8, 16 or 32 bit) of PromICE can be connected to an Ethernet network. Download speeds via Ethernet are typically around 50Kbytes/second. Once PromICE is connected to an Ethernet network, it can be accessed from anywhere in the world that has access to the network. 19. My target has 2 8 bit memories on it to emulate 16 bit. Do I need two PromICEs? No. PromICE comes in 2 versions, an 8 bit (single) and a 16 bit (dual). 1 Dual PromICE can be used to emulate 1-16 bit memory or 2-8 bit memories. The single PromICE has one 34 pin connector, and uses a target cable to emulate an 8 bit ROM (typically 28 or 32 pin DIP, 32 pin PLCC or 32 or 40 pin TSOP). A dual PromICE has 2-34 pin connectors, and can emulate either 2-8 bit memories, with each cable going to a connector or 1-16 bit memory (40 pin DIP, 44 pin PLCC, 56 pin TSOP, etc.) Grammar Engines 16 bit emulation cables have adapter boards that correctly route the signals between the 2 connectors on a dual PromICE. Grammar Engines LoadICE software allows the PromICE to be configured to exactly match a targets memory space so that a single 16 bit file will correctly load into 2 8 bit parts (odd and even bytes) or in an 8 bit memory space extended over 2 chips. Once PromICE is configured, it is possible to simply load the output file of the compiler or locator, with no extra splitting or manipulating files required. 20. My target has 2 - 16 bit (or 4-8 bit) memories to emulate 32 bit. Do I need two PromICEs? In this situation, 2 Dual (16 bit) PromICEs are required. The PromICEs need to be connected together with daisy chain for both the serial and the parallel ports. LoadICE can be configured to load a single 32-bit file across both PromICEs, or to load any number of multiple files required. 21. How much power does PromICE draw from a target? PromICE can be powered parasitically from the target or externally via a 120 VAC adapter (included). When a PromICE is powered from the target, it uses (typically) about 800 mA of target power. If PromICE is externally powered, PromICE will draw practically no power from the target, a maximum of 1 mA may be dissipated via pull-up resisters and address inputs. Externally powering the PromICE is recommended for most applications. 22. Will PromICE retain my code if I cycle power to my target? Yes. PromICE is equipped with a powerful capacitor (A Supercap) which will retain memory contents for several weeks to several hours, depending on the size and access speed of the PromICE unit. In all cases, there is enough time to load PromICE, disconnect from the host and connect it to the target for emulation. Most importantly a parasitically powered PromICE will retain memory during a target reset via power cycle, allowing the developer to load code to PromICE, reset the target and allow it to boot from the firmware loaded and retained in PromICE. |
||||
|
||||
Grammar Engine Inc. Copyright
2001 © All Rights Reserved
|
||||
Site Design by Web
Junkies
|