Testing BSC conditions

23 views
Skip to first unread message

Paul Anagnostopoulos

unread,
Jan 21, 2020, 11:53:02 AM1/21/20
to IBM1130
Folks,

Does anyone know whether the accumulator plus/negative/zero conditions were latched in flip-flops after each accumulator operation, or tested on the fly during BSC instruction execution?

I tried to read the circuits diagrams but my eyes gave out. It looked like the zero condition was always available and so could be tested on the fly.

~~ Paul

richard...@comcast.net

unread,
Jan 21, 2020, 12:21:53 PM1/21/20
to ibm...@googlegroups.com

Here’s what I do:

 

The CarryInd and OvflInd signals are latched during various arithmetic operations.  All of the other status signals are combinatorial based on the current contents of the ACCumulator:

 

ACC_Zero   <= '1' when ACC = "0000000000000000" else '0';

ACC_Pos    <= '1' when ACC_Zero = '0' and ACC(15) = '0' else '0';

ACC_Neg    <= '1' when ACC(15) = '1' else '0';

ACC_Even   <= '1' when ACC(0) = '0' else '0';

CarryOff   <= not CarryInd;

OvflOff    <= not OvflInd;

CondMet    <= (CCC(0) and OvflOff) or (CCC(1) and CarryOff) or (CCC(2) and ACC_Even) or

              (CCC(3) and ACC_Pos) or (CCC(4) and ACC_Neg)  or (CCC(5) and ACC_Zero);

 

The CondMet signal is used by BSC and BOSC either true or false depending on the F bit of the op code.

--
You received this message because you are subscribed to the Google Groups "IBM1130" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ibm1130+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ibm1130/b6c3e6bf-000c-4e23-a6ae-a24cbadef57e%40googlegroups.com.

richard...@comcast.net

unread,
Jan 21, 2020, 12:47:27 PM1/21/20
to ibm...@googlegroups.com

In the “Functional Characteristics” manual, on Page 6, the flags are discussed in detail.  Each of the instructions describes their effect on the flags.  Things like “LD” and “STO” have no effect, “ADD” and “SUB” certainly do.  See page 10 for Arithmetic Instructions.

 

“LDS” clearly alters the flags, independent of the contents of the ACCumulator.

 

That’s why I believe these 2 flags (only) are latched during instruction execution and all the others are simply combinatorial.

 

In any event, that scheme works.

 

http://media.ibm1130.org/E0006.pdf

 

Eddy Quicksall

unread,
Feb 13, 2020, 7:30:48 PM2/13/20
to ibm...@googlegroups.com

As far as I remember the O flag stays on once set until reset as below. That is so you can do some computing and at the end check to see if there was an overflow during the snip of code.

 

Eddy

--

You received this message because you are subscribed to the Google Groups "IBM1130" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ibm1130+u...@googlegroups.com.

richard...@comcast.net

unread,
Feb 13, 2020, 8:57:00 PM2/13/20
to ibm...@googlegroups.com

Correct, the OVFL flag is only cleared by STS, LDS, BSI or BSC instructions that specifically involve the Overflow Flag.  Carry is cleared at the beginning of every instruction that involves the accumulator (this may be an overstatement, I didn’t check every instruction) such as A, AD, S, SD, Shifts.  It can also be manipulated with LDS and STS.

 

From: ibm...@googlegroups.com <ibm...@googlegroups.com> On Behalf Of Eddy Quicksall
Sent: Thursday, February 13, 2020 4:29 PM
To: ibm...@googlegroups.com
Subject: RE: [IBM1130] Testing BSC conditions

 

As far as I remember the O flag stays on once set until reset as below. That is so you can do some computing and at the end check to see if there was an overflow during the snip of code.

 

Eddy

 

From: ibm...@googlegroups.com [mailto:ibm...@googlegroups.com] On Behalf Of richard...@comcast.net
Sent: Tuesday, January 21, 2020 12:47 PM
To: ibm...@googlegroups.com
Subject: RE: [IBM1130] Testing BSC conditions

 

In the “Functional Characteristics” manual, on Page 6, the flags are discussed in detail.  Each of the instructions describes their effect on the flags.  Things like “LD” and “STO” have no effect, “ADD” and “SUB” certainly do.  See page 10 for Arithmetic Instructions.

 

“LDS” clearly alters the flags, independent of the contents of the ACCumulator.

 

That’s why I believe these 2 flags (only) are latched during instruction execution and all the others are simply combinatorial.

 

In any event, that scheme works.

 

http://media.ibm1130.org/E0006.pdf

 

--
You received this message because you are subscribed to the Google Groups "IBM1130" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ibm1130+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ibm1130/013801d5d082%24d7f60c50%2487e224f0%24%40comcast.net.

--
You received this message because you are subscribed to the Google Groups "IBM1130" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ibm1130+u...@googlegroups.com.

Reply all
Reply to author
Forward
0 new messages