scotty2541 wrote:
Dinosaur,
Thanks for the reply. Especially so late at night.
Thanks for the reply. Especially so late at night.
I have a sleep disorder I acquired while in the military, which often has me up in the middle of the night. When I can’t sleep, I get on the computer...
Quote:
The ATF18V8 was part of a learner kit I bought years ago, then set aside. Now I've dusted it off and started over.
So after doing a part search and reading some data sheets, I thought the ATF750 would be a good unit for the final project. I picked up a hand full of them (in case I do a brain dead error and fry one).
So after doing a part search and reading some data sheets, I thought the ATF750 would be a good unit for the final project. I picked up a hand full of them (in case I do a brain dead error and fry one).
The ATF750 may be thought of as a 22V10 on steroids. However, it uses a proprietary programming format that is incompatible with many burners. My XGecu T56 burner will program the ATF750. On the other hand, my TOPS850 burner hasn’t a clue about the ATF750.
Quote:
And if the 16V8 says it's got FlipFlops (as it does all over the data sheet) and I can't make it happen, I'm not confident can I make FlipFlops work in the ATF750.
The problem is in the ease at which the 16V8 flops can be put to work. It’s just not as flexible a device as the 22V10.
Quote:
And yet another piece of information I can't get defined:
Where are GALs, relative to PLD's ? Just size? Is it still CPLD when they just drop the "C" and call it a PLD?
Where are GALs, relative to PLD's ? Just size? Is it still CPLD when they just drop the "C" and call it a PLD?
In the world of programmable logic, a GAL is a “simple” programmable logic device, or SPLD. A GAL is a descendant of a programmable array of logic, or PAL, the PAL being a simpler and less-flexible SPLD that was (in most renditions) one-time programmable. A closely-related device to the GAL is the PEEL (programmable electrically erasable logic), which is basically a GAL by another name. SPLDs as a group are characterized by low-density logic, a limited number of user pins, and a limited number of pins that may be arbitrarily defined as inputs or outputs.
A complex programmable logic device—CPLD—has a much denser logic fabric than an SPLD, i.e., many more macrocells, internal (“buried”) logic that is configurable in a variety of ways, a large number of user pins, and the ability to program most of those pins as inputs, outputs, or bi-directional, including the ability to high-Z a pin that functions as an output.
In particular, the availability of buried logic is a feature that distinguishes a CPLD from an SPLD. For example, a buried node can be configured as one of several kinds of flops, or could be configured as a latch to maintain state (giving rise to the ability to set up a state machine). Clocking is more flexible, and the use of physical pins as nodes, e.g., in cascading flops, is largely avoided, which conserves device resources and improves performance.
Quote:
All the doc, even for the 16V8, says it's a PLD, and says it's got D FlipFlops, not just combinational logic and latches. But I'm not seeing that work.
I’ve not done any work with the 16V8, but I understand that the device type you define in your CUPL code determines what capabilities are available. The 16V8 was intended to replace a PAL with a device that could be electrically erased and reprogrammed, and the 16V8’s capabilities reflect that characteristic. So you are working a bit against the 16V8’s original raison d'être.
In WinCUPL, it appears using the g16v8a device definition confers the most flexibility—the compiler will try to infer from your logic statements how the device is to be used.