Re: [Simh] A terminology question

2015-02-11 Thread Leo Broukhis
In this case the value is calculated from the other bits:
parity({upper half-word, parity bit 1}) = 0, parity({lower half-word,
parity bit 2}) = 1 indicates an instruction word

parity({upper half-word, parity bit 1}) = 1, parity({lower half-word,
parity bit 2}) = 0 indicates a data word

Leo

On Wed, Feb 11, 2015 at 10:48 AM, Phil Budne  wrote:

> Leo wrote:
> > "Parity" makes the most sense. I was wondering if there is already a more
> > specific term for such a scheme.
>
> To me, parity implies value calculated from the other bits.
> "tag" or "attribute" bits ring better in my ears.  If the tag bits
> can't be tweaked by user code, the term "capability" might be a
> choice.
>
> Phil
>
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

Re: [Simh] A terminology question

2015-02-11 Thread Phil Budne
Leo wrote:
> "Parity" makes the most sense. I was wondering if there is already a more
> specific term for such a scheme.

To me, parity implies value calculated from the other bits.
"tag" or "attribute" bits ring better in my ears.  If the tag bits
can't be tweaked by user code, the term "capability" might be a
choice.

Phil
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

Re: [Simh] A terminology question

2015-02-11 Thread Leo Broukhis
That's right. An attempt to execute a word with anything but "command
convolution" results in an exception. There were system calls ("extracodes"
in BESM-6 parlance) to store individual words as instructions and to switch
store mode back and forth.

Leo

On Wed, Feb 11, 2015 at 12:23 AM, Pontus Pihlgren 
wrote:

> If I understand it correctly, you have four combinations:
>
> 11 -- illegal
> 10 -- data
> 01 -- instruction
> 00 -- illegal
>
> And memory locations market illegal or data wont be executed?
>
> This reminds me of the more modern terms "DEP" - Data Execution
> Prevention, "NX" - No-eXecute, "XD" - eXecute Disable, "XN" - eXecute
> Never. DEP and NX seems to be a generic terms and the others are
> platform specific. Different OSs that take advantage of this calls it
> different things.
>
> Not quite the same as the DEP is usually enforced on memory pages.
>
> /P
>
> On Mon, Feb 09, 2015 at 12:32:47PM -0800, Leo Broukhis wrote:
> > Dear colleagues,
> >
> > There is an implementation detail in the BESM-6 architecture the name of
> > which we've struggled to translate adequately.  There is a feature
> > preventing execution of arbitrary data as instructions implemented using
> > two parity bits per word, for the upper and the lower half-word. The
> > overall parity must be odd, and one of the valid parity bit
> configurations
> > denotes an instruction, and the other denotes data. In the original
> > documentation this mechanism was called
> >
> https://translate.google.com/#ru/en/%D1%81%D0%B2%D0%B5%D1%80%D1%82%D0%BA%D0%B0
> > (the two forms were called literally "command convolution" and "number
> > convolution").
> >
> > Unlike a tagged architecture, there isn't a fixed tag value to indicate
> > instructions or data.
> >
> > Is there a standard term for this? "Convolution" sounds too mathematical.
> >
> > Thanks,
> > Leo
>
> > ___
> > Simh mailing list
> > Simh@trailing-edge.com
> > http://mailman.trailing-edge.com/mailman/listinfo/simh
>
>
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

Re: [Simh] A terminology question

2015-02-11 Thread Leo Broukhis
Hi Tim,

"Parity" makes the most sense. I was wondering if there is already a more
specific term for such a scheme.

Thanks,
Leo

On Wed, Feb 11, 2015 at 4:35 AM, Shoppa, Tim  wrote:

>  Rather than "convolution", maybe "parity", "check", "hash", or
> "fingerprint"? Like "command parity" and"number parity" plus two "invalid
> parities"?
>
> Many buses have multiple parity bits already (e.g. "address parity" and
> "instruction parity" or "upper parity" and "lower parity").
>
> Tim.
>
> Sent from my PDP-8/E
>  --
> From: Leo Broukhis 
> Sent: ‎2/‎9/‎2015 3:33 PM
> To: simh@trailing-edge.com
> Subject: [Simh] A terminology question
>
>   Dear colleagues,
>
> There is an implementation detail in the BESM-6 architecture the name of
> which we've struggled to translate adequately.  There is a feature
> preventing execution of arbitrary data as instructions implemented using
> two parity bits per word, for the upper and the lower half-word. The
> overall parity must be odd, and one of the valid parity bit configurations
> denotes an instruction, and the other denotes data. In the original
> documentation this mechanism was called
> https://translate.google.com/#ru/en/%D1%81%D0%B2%D0%B5%D1%80%D1%82%D0%BA%D0%B0
> (the two forms were called literally "command convolution" and "number
> convolution").
>
>  Unlike a tagged architecture, there isn't a fixed tag value to indicate
> instructions or data.
>
> Is there a standard term for this? "Convolution" sounds too mathematical.
>
>  Thanks,
> Leo
>
>
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

Re: [Simh] A terminology question [off topic]

2015-02-11 Thread lists
On Wed, 11 Feb 2015 12:35:28 +
"Shoppa, Tim"  wrote:

> Sent from my PDP-8/E

Seriously? That would be mighty impressive!

___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

Re: [Simh] A terminology question

2015-02-11 Thread Shoppa, Tim
Rather than "convolution", maybe "parity", "check", "hash", or "fingerprint"? 
Like "command parity" and"number parity" plus two "invalid parities"?

Many buses have multiple parity bits already (e.g. "address parity" and 
"instruction parity" or "upper parity" and "lower parity").

Tim.

Sent from my PDP-8/E

From: Leo Broukhis<mailto:l...@mailcom.com>
Sent: ‎2/‎9/‎2015 3:33 PM
To: simh@trailing-edge.com<mailto:simh@trailing-edge.com>
Subject: [Simh] A terminology question

Dear colleagues,

There is an implementation detail in the BESM-6 architecture the name of which 
we've struggled to translate adequately.  There is a feature preventing 
execution of arbitrary data as instructions implemented using two parity bits 
per word, for the upper and the lower half-word. The overall parity must be 
odd, and one of the valid parity bit configurations denotes an instruction, and 
the other denotes data. In the original documentation this mechanism was called 
https://translate.google.com/#ru/en/%D1%81%D0%B2%D0%B5%D1%80%D1%82%D0%BA%D0%B0 
(the two forms were called literally "command convolution" and "number 
convolution").

Unlike a tagged architecture, there isn't a fixed tag value to indicate 
instructions or data.

Is there a standard term for this? "Convolution" sounds too mathematical.

Thanks,
Leo

___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

Re: [Simh] A terminology question

2015-02-11 Thread Pontus Pihlgren
If I understand it correctly, you have four combinations:

11 -- illegal
10 -- data
01 -- instruction
00 -- illegal

And memory locations market illegal or data wont be executed?

This reminds me of the more modern terms "DEP" - Data Execution 
Prevention, "NX" - No-eXecute, "XD" - eXecute Disable, "XN" - eXecute 
Never. DEP and NX seems to be a generic terms and the others are 
platform specific. Different OSs that take advantage of this calls it 
different things.

Not quite the same as the DEP is usually enforced on memory pages.

/P

On Mon, Feb 09, 2015 at 12:32:47PM -0800, Leo Broukhis wrote:
> Dear colleagues,
> 
> There is an implementation detail in the BESM-6 architecture the name of
> which we've struggled to translate adequately.  There is a feature
> preventing execution of arbitrary data as instructions implemented using
> two parity bits per word, for the upper and the lower half-word. The
> overall parity must be odd, and one of the valid parity bit configurations
> denotes an instruction, and the other denotes data. In the original
> documentation this mechanism was called
> https://translate.google.com/#ru/en/%D1%81%D0%B2%D0%B5%D1%80%D1%82%D0%BA%D0%B0
> (the two forms were called literally "command convolution" and "number
> convolution").
> 
> Unlike a tagged architecture, there isn't a fixed tag value to indicate
> instructions or data.
> 
> Is there a standard term for this? "Convolution" sounds too mathematical.
> 
> Thanks,
> Leo

> ___
> Simh mailing list
> Simh@trailing-edge.com
> http://mailman.trailing-edge.com/mailman/listinfo/simh

___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh

[Simh] A terminology question

2015-02-09 Thread Leo Broukhis
Dear colleagues,

There is an implementation detail in the BESM-6 architecture the name of
which we've struggled to translate adequately.  There is a feature
preventing execution of arbitrary data as instructions implemented using
two parity bits per word, for the upper and the lower half-word. The
overall parity must be odd, and one of the valid parity bit configurations
denotes an instruction, and the other denotes data. In the original
documentation this mechanism was called
https://translate.google.com/#ru/en/%D1%81%D0%B2%D0%B5%D1%80%D1%82%D0%BA%D0%B0
(the two forms were called literally "command convolution" and "number
convolution").

Unlike a tagged architecture, there isn't a fixed tag value to indicate
instructions or data.

Is there a standard term for this? "Convolution" sounds too mathematical.

Thanks,
Leo
___
Simh mailing list
Simh@trailing-edge.com
http://mailman.trailing-edge.com/mailman/listinfo/simh