UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 6288

ABEL: Registered Sets cannot be assigned using HEX, Octal, Binary or Decimal representation

Description

Keywords: XABEL, Abel, .abl, register, set, bus, assignment, radix, incorrect value

Urgency: Standard

General Description: When making an assignment to a registered bus like:

MyBus := 5;
or
MyBus := ^h5;

the bus elements are not implemented correctly.

Solution

For Abel versions before 7.20:
Using the binary, octal, decimal, or hex representation works with combinatorial
set assignments or relational operators (==, >=, >,etc...). However, when using
registered set assignments the actual set needs to be used.

Example:

Declarations
Bus0..Bus2 PIN mistype 'Greg';
My Bus = [Bus..Bus]; "This creates a registered set.

Equations
My Bus := [1,0,1]; "is the same as

"Bus0 := '1';
"Bus1 := '0';
"Bus2 := '1';

ABEL 7.20 and later allows registered set assignments to be made with the
various radix notations.
AR# 6288
Date Created 04/26/1999
Last Updated 03/22/2005
Status Archive
Type General Article