Browse Prior Art Database

COHERENT READ OF MULTI-WORD DATA FROM TPU CAMSHAFT DECODER FUNCTION

IP.com Disclosure Number: IPCOM000008756D
Original Publication Date: 1998-Jun-01
Included in the Prior Art Database: 2002-Jul-10
Document File: 2 page(s) / 122K

Publishing Venue

Motorola

Related People

Sharon Darley: AUTHOR [+2]

Abstract

The "Coherent Read of Multi-word data from TPU Camshaft Decoder Function" (hereafter referred to as the INVENTION) solves a problem in a system that uses dual ported RAM. In this particu- lar system, the dual ported RAM is on-chip and is used to exchange data between a CPU and the microengine of one of the on-chip peripherals, the Time Processor Unit (TPU). The dual ported RAM guarantees one long-word (two words) of uninterrupted access. This means that the CPU can read two adjacent words of data and be ensured that the read is coherent, that is, the TPU cannot update one of the words in the middle of the read. The same is true for the TPU. However, in this particular system, there is no mechanism to handle coherent data reads when the data is longer than two words. This presents a problem in applications in which it is necessary to exchange data longer than two words in length. Because the RAM, CPU, and TPU all reside on the same microcontroller (MCU), no hardware mechanism can be implemented by the user to solve this problem; the hardware constraints are already defined. Thus, a software solution must be implemented.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 50% of the total text.

Page 1 of 2

0 M

MOTOROLA Technical Developnzent.~

COHERENT READ OF MULTI-WORD DATA FROM TPU CAMSHAFT DECODER FUNCTION

by Sharon Darley and Richard Soja

PROBLEM ADDRESSED

  The "Coherent Read of Multi-word data from TPU Camshaft Decoder Function" (hereafter referred to as the INVENTION) solves a problem in a system that uses dual ported RAM. In this particu- lar system, the dual ported RAM is on-chip and is used to exchange data between a CPU and the microengine of one of the on-chip peripherals, the Time Processor Unit (TPU). The dual ported RAM guarantees one long-word (two words) of uninterrupted access. This means that the CPU can read two adjacent words of data and be ensured that the read is coherent, that is, the TPU cannot update one of the words in the middle of the read. The same is true for the TPU. However, in this particular system, there is no mechanism to handle coherent data reads when the data is longer than two words. This presents a problem in applications in which it is necessary to exchange data longer than two words in length. Because the RAM, CPU, and TPU all reside on the same microcontroller (MCU), no hardware mechanism can be implemented by the user to solve this problem; the hardware constraints are already defined. Thus, a software solution must be implemented.

  Software communication between the CPU and TPU is limited to service requests from the CPU, mode selection bits, and data passed through dual- port RAM whose purpose is defined by the TPU function. Thus, the CPU software cannot implement a data-holdoff mechanism to handle multi-word coherent reads/writes to the dual ported RAM shared with the TPU; any such implementation must be included in the TPU microcode. Up until the time of this INVENTION, no data-holdoff implementation existed in any of the functions already written for the TPU. Other functions handled this problem by buffering data, that is, keeping two copies of the data in RAM-one static copy only updated at specific times, and one continually

updated as required by the system. However, because the number of words in the dual ported RAM is fixed, approximately six words of data for each TPU function, buffering multiple words of data is not feasible in most functions. Thus, another solution had to be devised.

SOLUTION

  This INVENTION addresses the problem of multi-word coherent data transfers with a software implementation of a data-hold& mechanism in the TPU microcode. A feature was added to the TPU function to allow the CPU to issue a data-holdoff service request to the TPU. Upon receiving this request, the TPU finishes updating the data if it is currently processing an event and then sets a sema- phore flag. While this flag is set, the TPU will not update the data. If an event occurs...