![]() |
![]() |
![]() |
||||
![]() |
|
|||
1. Can I trace my code with PromICE? Yes. Grammar Engine is shipping a Trace option for PromICE. It is available in either 128KByte or 512KByte depths and is 32-bit wide. It can be used to trace the full address range of an embedded target. The best applications for PromICE with Trace are for debugging board start-up code, BIOS modifications, and device drivers for peripherals. If youre coding in assembly or developing low-level routines, it might be the only tool you need. Embedded developers with complex systems using C++ code generators and an RTOS will also find PromICE with Trace invaluable. A simple trace buffer running with no system overhead provides post-mortem information after a system crash. It records the last locations accessed before the crash, providing a starting point for your investigation. Think of it as the "embedded black box". If youre hunting a bug that occurs infrequently, you can connect PromICE with Trace - when the crash occurs, the trace record will be waiting for your analysis. Trace captures memory accesses, either in the memory being emulated or anywhere in the targets address range. This information can be viewed as memory location addresses in hex. 4. How do I see what I traced? New LoadICE commands control trace and view the results. The trace result appears as a list of memory locations (in hex) that were accessed while trace was on. This listing can be uploaded to a host for viewing and searching with a text editor. The host can read and write trace memory without disturbing target emulation. 5. Can I do a source-level trace? Not at this time. We are working with debugger companies to implement source-level trace support for PromICE with Trace. Watch our web site for future developments 6. How fast a processor can I trace? Because PromICE traces memory accesses, trace is not tied to processor cycles. Different speeds of trace are available, and the fastest will traces memory accesses to 35ns, the same as the fastest PromICE. 7. Can I add trace to an existing PromICE? The trace board requires a different power supply than existing PromICEs. Depending on the age of your existing PromICE, it is possible to trade your PromICE for a new PromICE with Trace. Contact your sales rep for details. 8. Can PromICE provide source level trace? As a memory emulator, PromICE provides universal emulation, and works with any microprocessor. PromICE with Trace is also a universal product. Source level trace requires relating memory accesses to high level source lines. We will provide debugger companies with software libraries or DLLs that integrate support for source level trace via PromICE in their debuggers. Watch for support later this year. 9. Can I disassemble the trace data myself? If you are programming in assembly language, its possible to pass the trace file through a table on your host to view the trace data in symbolic assembler. Several PromICE with Trace users do this now. An AI virtual UART is included on every trace board. It can be used as a serial channel for monitor-based debuggers, and is independent of the trace features. The trace buffer is available in 128K or 512K depths. The trace memory is 32-bit wide, with 21 address lines coming in from the ROM socket and the other 11 signals can be connected to the target directly. The setup allows you to use a 24-bit address and 8-bit data bus. There is also an external clock input. 12. What trace control is available? Trace is fully configurable and controlled in over 60 variations. It is possible to start and stop trace on a specific address, access anywhere in a range of addresses, or when entering or leaving a range of addresses. You can also use counters to skip trace, begin tracing after a preset number of times a condition is met. 13. Can you trace if my processor uses prefetch and other cache features? Like all trace tools, PromICE cannot see program executions when these features are enabled. It is possible to measure progress by periodically writing to unused memory locations during debugging. These writes could then be traced. Other workarounds and techniques are available. 14. What is "code coverage"? What can I use it for? Code coverage is a 8-bit wide memory scheme that maps to the address range of the target. PromICE with Trace will load data of the users choice as each memory location is accessed. This valuable feature is used to ensure that an entire program is tested and also can be used to detect memory leaks or memory accesses out of bounds of program operation 15. How do I see what I traced? Trace data captured by PromICE can be uploaded to a host without interrupting emulation. It can be viewed through Grammar Engines LoadICE software or any file editor software for ASCII or text files. The trace data in a PromICE cannot be viewed directly. It can be uploaded as an entire file or in sections. 16. Can I use code coverage to "profile" my software? Currently code coverage only indicates whether a line of code is accessed, not how many times or how much time your program spends in a particular routine. Future enhancements to PromICE with Trace may include this feature 17. What is FlashICE? FlashICE is a flash memory emulator. Like PromICE, it emulates flash memory, but it goes one step further by recognizing and responding to embedded flash command (byte program, sectors erase, etc.) FlashICE currently supports AMD 29F010 and 29F040 flash memories in 32 pin DIP, PLCC and TSOP footprints. In the future, support for a great many more flash devices are planned. Check the FlashICE web site for current product status. 18. Do you still support Romulator/Romemulator/ROMboy? These are memory emulation products that Grammar Engine made in the past, and are no longer supported. Romulator and Romemulator were predecessors to the PromICE and were discontinued in 1990 with the introduction of the PromICE. ROMboy was a diminutive PromICE that was discontinued in 1995. If you are using these products and encounter problems, we recommend that you replace them with a current version of PromICE. (Sorry, no trade-ins or upgrade offers apply.) |
||||
|
||||
Grammar Engine Inc. Copyright
2001 © All Rights Reserved
|
||||
Site Design by Web
Junkies
|