Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

6 May, 2024: The networking issue during the past two days has been identified and may be fixed. Will keep monitoring.


tech / sci.electronics.design / Re: Espresso-mv logic minimization

SubjectAuthor
* Espresso-mv logic minimizationbitrex
`* Re: Espresso-mv logic minimizationFred Bloggs
 +* Re: Espresso-mv logic minimizationbitrex
 |`- Re: Espresso-mv logic minimizationFred Bloggs
 `* Re: Espresso-mv logic minimizationJohn Larkin
  +- Re: Espresso-mv logic minimizationbitrex
  +- Re: Espresso-mv logic minimizationbitrex
  `* Re: Espresso-mv logic minimizationPhil Hobbs
   +- Re: Espresso-mv logic minimizationbitrex
   `- Re: Espresso-mv logic minimizationFred Bloggs

1
Espresso-mv logic minimization

<QvnmM.13780$LQ3.12372@fx01.iad>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=123883&group=sci.electronics.design#123883

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx01.iad.POSTED!not-for-mail
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.12.0
Newsgroups: sci.electronics.design
Content-Language: en-US
From: use...@example.net (bitrex)
Subject: Espresso-mv logic minimization
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Lines: 50
Message-ID: <QvnmM.13780$LQ3.12372@fx01.iad>
X-Complaints-To: abuse@frugalusenet.com
NNTP-Posting-Date: Mon, 26 Jun 2023 21:34:40 UTC
Organization: frugalusenet - www.frugalusenet.com
Date: Mon, 26 Jun 2023 17:34:39 -0400
X-Received-Bytes: 2875
 by: bitrex - Mon, 26 Jun 2023 21:34 UTC

The multi-value option on the Espresso logic-minimization software can
be used to solve the "input-encoding" problem, where you have say some
m-bit ROM and some number of outputs n > m, and you want to find out
assigning which bit vectors in the ROM to what output vectors will
result in the smallest decode logic.

The documentation isn't particularly helpful:

<http://bear.ces.cwru.edu/eecs_cad/man_octtools_espresso_inputs.html>

the closest relevant example I can find is Example 2:

"This example shows a description of a multiple-valued function with 5
binary variables and 3 multiple-valued variables (8 variables total)
where the multiple-valued variables have sizes of 4 27 and 10 (note that
the last multiple-valued variable is the "output" and also encodes the
ON -set, DC -set and OFF -set information)."

.mv 8 5 4 27 10
.ilb in1 in2 in3 in4 in5
.label var=5 part1 part2 part3 part4
.label var=6 a b c d e f g h i j k l m n
o p q r s t u v w x y z a1
.label var=7 out1 out2 out3 out4 out5 out6
out7 out8 out9 out10
0-010|1000|100000000000000000000000000|0010000000
10-10|1000|010000000000000000000000000|1000000000
0-111|1000|001000000000000000000000000|0001000000
0-10-|1000|000100000000000000000000000|0001000000
00000|1000|000010000000000000000000000|1000000000
00010|1000|000001000000000000000000000|0010000000
01001|1000|000000100000000000000000000|0000000010
0101-|1000|000000010000000000000000000|0000000000
0-0-0|1000|000000001000000000000000000|1000000000
10000|1000|000000000100000000000000000|0000000000
11100|1000|000000000010000000000000000|0010000000
10-10|1000|000000000001000000000000000|0000000000
11111|1000|000000000000100000000000000|0010000000
.
.
.
11111|0001|000000000000000000000000001|000000000

For myself I basically just want to find out how to have X bits of
external input and Y bits of ROM and optimize the encoding in ROM such
that the decode logic is minimized, but I'm struggling to figure out
this input file syntax..

Re: Espresso-mv logic minimization

<064f62c3-2979-4cbd-9e92-2e0e08c1d3d3n@googlegroups.com>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=124046&group=sci.electronics.design#124046

  copy link   Newsgroups: sci.electronics.design
X-Received: by 2002:a37:b447:0:b0:763:ce7e:f280 with SMTP id d68-20020a37b447000000b00763ce7ef280mr1495142qkf.11.1687990122611;
Wed, 28 Jun 2023 15:08:42 -0700 (PDT)
X-Received: by 2002:a05:6870:6710:b0:1b0:3f7f:6736 with SMTP id
gb16-20020a056870671000b001b03f7f6736mr4533536oab.6.1687990122073; Wed, 28
Jun 2023 15:08:42 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: sci.electronics.design
Date: Wed, 28 Jun 2023 15:08:41 -0700 (PDT)
In-Reply-To: <QvnmM.13780$LQ3.12372@fx01.iad>
Injection-Info: google-groups.googlegroups.com; posting-host=2601:5cc:4701:5250:1435:58d6:144c:cfe7;
posting-account=iGtwSwoAAABNNwPORfvAs6OM4AR9GRHt
NNTP-Posting-Host: 2601:5cc:4701:5250:1435:58d6:144c:cfe7
References: <QvnmM.13780$LQ3.12372@fx01.iad>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <064f62c3-2979-4cbd-9e92-2e0e08c1d3d3n@googlegroups.com>
Subject: Re: Espresso-mv logic minimization
From: bloggs.f...@gmail.com (Fred Bloggs)
Injection-Date: Wed, 28 Jun 2023 22:08:42 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 3855
 by: Fred Bloggs - Wed, 28 Jun 2023 22:08 UTC

On Monday, June 26, 2023 at 5:34:47 PM UTC-4, bitrex wrote:
> The multi-value option on the Espresso logic-minimization software can
> be used to solve the "input-encoding" problem, where you have say some
> m-bit ROM and some number of outputs n > m, and you want to find out
> assigning which bit vectors in the ROM to what output vectors will
> result in the smallest decode logic.
>
> The documentation isn't particularly helpful:
>
> <http://bear.ces.cwru.edu/eecs_cad/man_octtools_espresso_inputs.html>
>
> the closest relevant example I can find is Example 2:
>
> "This example shows a description of a multiple-valued function with 5
> binary variables and 3 multiple-valued variables (8 variables total)
> where the multiple-valued variables have sizes of 4 27 and 10 (note that
> the last multiple-valued variable is the "output" and also encodes the
> ON -set, DC -set and OFF -set information)."
>
> .mv 8 5 4 27 10
> .ilb in1 in2 in3 in4 in5
> .label var=5 part1 part2 part3 part4
> .label var=6 a b c d e f g h i j k l m n
> o p q r s t u v w x y z a1
> .label var=7 out1 out2 out3 out4 out5 out6
> out7 out8 out9 out10
> 0-010|1000|100000000000000000000000000|0010000000
> 10-10|1000|010000000000000000000000000|1000000000
> 0-111|1000|001000000000000000000000000|0001000000
> 0-10-|1000|000100000000000000000000000|0001000000
> 00000|1000|000010000000000000000000000|1000000000
> 00010|1000|000001000000000000000000000|0010000000
> 01001|1000|000000100000000000000000000|0000000010
> 0101-|1000|000000010000000000000000000|0000000000
> 0-0-0|1000|000000001000000000000000000|1000000000
> 10000|1000|000000000100000000000000000|0000000000
> 11100|1000|000000000010000000000000000|0010000000
> 10-10|1000|000000000001000000000000000|0000000000
> 11111|1000|000000000000100000000000000|0010000000
> .
> .
> .
> 11111|0001|000000000000000000000000001|000000000
>
>
>
> For myself I basically just want to find out how to have X bits of
> external input and Y bits of ROM and optimize the encoding in ROM such
> that the decode logic is minimized, but I'm struggling to figure out
> this input file syntax..

This isn't 1980 anymore, no one is all that concerned with saving memory, unless it's some super expensive high performance type. Get a "ROM" with wider words, this can synthesized with a composite stack using parallel addressing as well part upgrade. Whoever wrote the description in the link is a worthless idiot.

Re: Espresso-mv logic minimization

<sO6nM.21$1ZN4.1@fx12.iad>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=124058&group=sci.electronics.design#124058

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx12.iad.POSTED!not-for-mail
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.12.0
Subject: Re: Espresso-mv logic minimization
Newsgroups: sci.electronics.design
References: <QvnmM.13780$LQ3.12372@fx01.iad>
<064f62c3-2979-4cbd-9e92-2e0e08c1d3d3n@googlegroups.com>
Content-Language: en-US
From: use...@example.net (bitrex)
In-Reply-To: <064f62c3-2979-4cbd-9e92-2e0e08c1d3d3n@googlegroups.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 69
Message-ID: <sO6nM.21$1ZN4.1@fx12.iad>
X-Complaints-To: abuse@frugalusenet.com
NNTP-Posting-Date: Thu, 29 Jun 2023 03:23:04 UTC
Organization: frugalusenet - www.frugalusenet.com
Date: Wed, 28 Jun 2023 23:23:05 -0400
X-Received-Bytes: 4060
 by: bitrex - Thu, 29 Jun 2023 03:23 UTC

On 6/28/2023 6:08 PM, Fred Bloggs wrote:
> On Monday, June 26, 2023 at 5:34:47 PM UTC-4, bitrex wrote:
>> The multi-value option on the Espresso logic-minimization software can
>> be used to solve the "input-encoding" problem, where you have say some
>> m-bit ROM and some number of outputs n > m, and you want to find out
>> assigning which bit vectors in the ROM to what output vectors will
>> result in the smallest decode logic.
>>
>> The documentation isn't particularly helpful:
>>
>> <http://bear.ces.cwru.edu/eecs_cad/man_octtools_espresso_inputs.html>
>>
>> the closest relevant example I can find is Example 2:
>>
>> "This example shows a description of a multiple-valued function with 5
>> binary variables and 3 multiple-valued variables (8 variables total)
>> where the multiple-valued variables have sizes of 4 27 and 10 (note that
>> the last multiple-valued variable is the "output" and also encodes the
>> ON -set, DC -set and OFF -set information)."
>>
>> .mv 8 5 4 27 10
>> .ilb in1 in2 in3 in4 in5
>> .label var=5 part1 part2 part3 part4
>> .label var=6 a b c d e f g h i j k l m n
>> o p q r s t u v w x y z a1
>> .label var=7 out1 out2 out3 out4 out5 out6
>> out7 out8 out9 out10
>> 0-010|1000|100000000000000000000000000|0010000000
>> 10-10|1000|010000000000000000000000000|1000000000
>> 0-111|1000|001000000000000000000000000|0001000000
>> 0-10-|1000|000100000000000000000000000|0001000000
>> 00000|1000|000010000000000000000000000|1000000000
>> 00010|1000|000001000000000000000000000|0010000000
>> 01001|1000|000000100000000000000000000|0000000010
>> 0101-|1000|000000010000000000000000000|0000000000
>> 0-0-0|1000|000000001000000000000000000|1000000000
>> 10000|1000|000000000100000000000000000|0000000000
>> 11100|1000|000000000010000000000000000|0010000000
>> 10-10|1000|000000000001000000000000000|0000000000
>> 11111|1000|000000000000100000000000000|0010000000
>> .
>> .
>> .
>> 11111|0001|000000000000000000000000001|000000000
>>
>>
>>
>> For myself I basically just want to find out how to have X bits of
>> external input and Y bits of ROM and optimize the encoding in ROM such
>> that the decode logic is minimized, but I'm struggling to figure out
>> this input file syntax..
>
> This isn't 1980 anymore, no one is all that concerned with saving memory, unless it's some super expensive high performance type. Get a "ROM" with wider words, this can synthesized with a composite stack using parallel addressing as well part upgrade. Whoever wrote the description in the link is a worthless idiot.

I figured out how it works, and Espresso-MV only gets you part of the
way there for the input-encoding problem, vs just minimizing a Boolean
function.

It outputs a set of constraints, where the output decode logic is
minimized when an input encoding can be found such that the constraint
terms all lie on the faces of a Boolean hypercube.

See e.g. the four-variable problem on the last two pages here:

<https://www.tud.ttu.ee/im/Peeter.Ellervee/IAS0540/espresso-explained.pdf>

and see how the states are encoded such that the path around
the square makes it so all the constraint terms have a Hamming distance
of one from each other.

Re: Espresso-mv logic minimization

<e7601fef-383c-428b-ac31-ea5382c7a1a9n@googlegroups.com>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=124134&group=sci.electronics.design#124134

  copy link   Newsgroups: sci.electronics.design
X-Received: by 2002:a05:620a:4053:b0:765:a67d:8528 with SMTP id i19-20020a05620a405300b00765a67d8528mr161qko.5.1688062053434;
Thu, 29 Jun 2023 11:07:33 -0700 (PDT)
X-Received: by 2002:a05:6871:230e:b0:1aa:22cd:8ad1 with SMTP id
sf14-20020a056871230e00b001aa22cd8ad1mr568988oab.11.1688062053088; Thu, 29
Jun 2023 11:07:33 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: sci.electronics.design
Date: Thu, 29 Jun 2023 11:07:32 -0700 (PDT)
In-Reply-To: <sO6nM.21$1ZN4.1@fx12.iad>
Injection-Info: google-groups.googlegroups.com; posting-host=2601:5cc:4701:5250:a89b:5e6c:bf40:ca3c;
posting-account=iGtwSwoAAABNNwPORfvAs6OM4AR9GRHt
NNTP-Posting-Host: 2601:5cc:4701:5250:a89b:5e6c:bf40:ca3c
References: <QvnmM.13780$LQ3.12372@fx01.iad> <064f62c3-2979-4cbd-9e92-2e0e08c1d3d3n@googlegroups.com>
<sO6nM.21$1ZN4.1@fx12.iad>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <e7601fef-383c-428b-ac31-ea5382c7a1a9n@googlegroups.com>
Subject: Re: Espresso-mv logic minimization
From: bloggs.f...@gmail.com (Fred Bloggs)
Injection-Date: Thu, 29 Jun 2023 18:07:33 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 5042
 by: Fred Bloggs - Thu, 29 Jun 2023 18:07 UTC

On Wednesday, June 28, 2023 at 11:23:12 PM UTC-4, bitrex wrote:
> On 6/28/2023 6:08 PM, Fred Bloggs wrote:
> > On Monday, June 26, 2023 at 5:34:47 PM UTC-4, bitrex wrote:
> >> The multi-value option on the Espresso logic-minimization software can
> >> be used to solve the "input-encoding" problem, where you have say some
> >> m-bit ROM and some number of outputs n > m, and you want to find out
> >> assigning which bit vectors in the ROM to what output vectors will
> >> result in the smallest decode logic.
> >>
> >> The documentation isn't particularly helpful:
> >>
> >> <http://bear.ces.cwru.edu/eecs_cad/man_octtools_espresso_inputs.html>
> >>
> >> the closest relevant example I can find is Example 2:
> >>
> >> "This example shows a description of a multiple-valued function with 5
> >> binary variables and 3 multiple-valued variables (8 variables total)
> >> where the multiple-valued variables have sizes of 4 27 and 10 (note that
> >> the last multiple-valued variable is the "output" and also encodes the
> >> ON -set, DC -set and OFF -set information)."
> >>
> >> .mv 8 5 4 27 10
> >> .ilb in1 in2 in3 in4 in5
> >> .label var=5 part1 part2 part3 part4
> >> .label var=6 a b c d e f g h i j k l m n
> >> o p q r s t u v w x y z a1
> >> .label var=7 out1 out2 out3 out4 out5 out6
> >> out7 out8 out9 out10
> >> 0-010|1000|100000000000000000000000000|0010000000
> >> 10-10|1000|010000000000000000000000000|1000000000
> >> 0-111|1000|001000000000000000000000000|0001000000
> >> 0-10-|1000|000100000000000000000000000|0001000000
> >> 00000|1000|000010000000000000000000000|1000000000
> >> 00010|1000|000001000000000000000000000|0010000000
> >> 01001|1000|000000100000000000000000000|0000000010
> >> 0101-|1000|000000010000000000000000000|0000000000
> >> 0-0-0|1000|000000001000000000000000000|1000000000
> >> 10000|1000|000000000100000000000000000|0000000000
> >> 11100|1000|000000000010000000000000000|0010000000
> >> 10-10|1000|000000000001000000000000000|0000000000
> >> 11111|1000|000000000000100000000000000|0010000000
> >> .
> >> .
> >> .
> >> 11111|0001|000000000000000000000000001|000000000
> >>
> >>
> >>
> >> For myself I basically just want to find out how to have X bits of
> >> external input and Y bits of ROM and optimize the encoding in ROM such
> >> that the decode logic is minimized, but I'm struggling to figure out
> >> this input file syntax..
> >
> > This isn't 1980 anymore, no one is all that concerned with saving memory, unless it's some super expensive high performance type. Get a "ROM" with wider words, this can synthesized with a composite stack using parallel addressing as well part upgrade. Whoever wrote the description in the link is a worthless idiot.
> I figured out how it works, and Espresso-MV only gets you part of the
> way there for the input-encoding problem, vs just minimizing a Boolean
> function.
>
> It outputs a set of constraints, where the output decode logic is
> minimized when an input encoding can be found such that the constraint
> terms all lie on the faces of a Boolean hypercube.
>
> See e.g. the four-variable problem on the last two pages here:
>
> <https://www.tud.ttu.ee/im/Peeter.Ellervee/IAS0540/espresso-explained.pdf>
>
> and see how the states are encoded such that the path around
> the square makes it so all the constraint terms have a Hamming distance
> of one from each other.

I don't see how you get more minimum than a memory table look-up.

Re: Espresso-mv logic minimization

<2ltr9i9kq588rcqdrsf7mn9jqsuv048qrn@4ax.com>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=124143&group=sci.electronics.design#124143

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!feeder.usenetexpress.com!tr1.iad1.usenetexpress.com!69.80.99.22.MISMATCH!Xl.tags.giganews.com!local-2.nntp.ord.giganews.com!nntp.supernews.com!news.supernews.com.POSTED!not-for-mail
NNTP-Posting-Date: Thu, 29 Jun 2023 21:26:19 +0000
From: jlar...@highlandSNIPMEtechnology.com (John Larkin)
Newsgroups: sci.electronics.design
Subject: Re: Espresso-mv logic minimization
Date: Thu, 29 Jun 2023 14:26:21 -0700
Organization: Highland Tech
Reply-To: xx@yy.com
Message-ID: <2ltr9i9kq588rcqdrsf7mn9jqsuv048qrn@4ax.com>
References: <QvnmM.13780$LQ3.12372@fx01.iad> <064f62c3-2979-4cbd-9e92-2e0e08c1d3d3n@googlegroups.com>
X-Newsreader: Forte Agent 3.1/32.783
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Lines: 59
X-Trace: sv3-9Y5iS1Nylu7CDbrFu8uMAjgik6V3HI2UPbF8Nh2KlseQPqhybjp4Ti4ssOx1a8KaVY0wfRpq8uTF65u!fx/HkXZpCrSqSvF1dpwIkMQlJkJOxu+jurXc+wE5JCvEDH9JC442U77T2yWgvI+AUkaTUGFaE5Qd!TmESCg==
X-Complaints-To: www.supernews.com/docs/abuse.html
X-DMCA-Complaints-To: www.supernews.com/docs/dmca.html
X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers
X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly
X-Postfilter: 1.3.40
 by: John Larkin - Thu, 29 Jun 2023 21:26 UTC

On Wed, 28 Jun 2023 15:08:41 -0700 (PDT), Fred Bloggs
<bloggs.fredbloggs.fred@gmail.com> wrote:

>On Monday, June 26, 2023 at 5:34:47?PM UTC-4, bitrex wrote:
>> The multi-value option on the Espresso logic-minimization software can
>> be used to solve the "input-encoding" problem, where you have say some
>> m-bit ROM and some number of outputs n > m, and you want to find out
>> assigning which bit vectors in the ROM to what output vectors will
>> result in the smallest decode logic.
>>
>> The documentation isn't particularly helpful:
>>
>> <http://bear.ces.cwru.edu/eecs_cad/man_octtools_espresso_inputs.html>
>>
>> the closest relevant example I can find is Example 2:
>>
>> "This example shows a description of a multiple-valued function with 5
>> binary variables and 3 multiple-valued variables (8 variables total)
>> where the multiple-valued variables have sizes of 4 27 and 10 (note that
>> the last multiple-valued variable is the "output" and also encodes the
>> ON -set, DC -set and OFF -set information)."
>>
>> .mv 8 5 4 27 10
>> .ilb in1 in2 in3 in4 in5
>> .label var=5 part1 part2 part3 part4
>> .label var=6 a b c d e f g h i j k l m n
>> o p q r s t u v w x y z a1
>> .label var=7 out1 out2 out3 out4 out5 out6
>> out7 out8 out9 out10
>> 0-010|1000|100000000000000000000000000|0010000000
>> 10-10|1000|010000000000000000000000000|1000000000
>> 0-111|1000|001000000000000000000000000|0001000000
>> 0-10-|1000|000100000000000000000000000|0001000000
>> 00000|1000|000010000000000000000000000|1000000000
>> 00010|1000|000001000000000000000000000|0010000000
>> 01001|1000|000000100000000000000000000|0000000010
>> 0101-|1000|000000010000000000000000000|0000000000
>> 0-0-0|1000|000000001000000000000000000|1000000000
>> 10000|1000|000000000100000000000000000|0000000000
>> 11100|1000|000000000010000000000000000|0010000000
>> 10-10|1000|000000000001000000000000000|0000000000
>> 11111|1000|000000000000100000000000000|0010000000
>> .
>> .
>> .
>> 11111|0001|000000000000000000000000001|000000000
>>
>>
>>
>> For myself I basically just want to find out how to have X bits of
>> external input and Y bits of ROM and optimize the encoding in ROM such
>> that the decode logic is minimized, but I'm struggling to figure out
>> this input file syntax..
>
>This isn't 1980 anymore, no one is all that concerned with saving memory, unless it's some super expensive high performance type. Get a "ROM" with wider words, this can synthesized with a composite stack using parallel addressing as well part upgrade. Whoever wrote the description in the link is a worthless idiot.

The FPGA tools take your suggestion and map it into their
architecture. The days of Karnaugh maps are long gone.

Re: Espresso-mv logic minimization

<93qnM.1425$Bq67.1238@fx13.iad>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=124154&group=sci.electronics.design#124154

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer03.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx13.iad.POSTED!not-for-mail
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.12.0
Subject: Re: Espresso-mv logic minimization
Newsgroups: sci.electronics.design
References: <QvnmM.13780$LQ3.12372@fx01.iad>
<064f62c3-2979-4cbd-9e92-2e0e08c1d3d3n@googlegroups.com>
<2ltr9i9kq588rcqdrsf7mn9jqsuv048qrn@4ax.com>
Content-Language: en-US
From: use...@example.net (bitrex)
In-Reply-To: <2ltr9i9kq588rcqdrsf7mn9jqsuv048qrn@4ax.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Lines: 70
Message-ID: <93qnM.1425$Bq67.1238@fx13.iad>
X-Complaints-To: abuse@frugalusenet.com
NNTP-Posting-Date: Fri, 30 Jun 2023 01:17:57 UTC
Organization: frugalusenet - www.frugalusenet.com
Date: Thu, 29 Jun 2023 21:17:58 -0400
X-Received-Bytes: 4078
 by: bitrex - Fri, 30 Jun 2023 01:17 UTC

On 6/29/2023 5:26 PM, John Larkin wrote:
> On Wed, 28 Jun 2023 15:08:41 -0700 (PDT), Fred Bloggs
> <bloggs.fredbloggs.fred@gmail.com> wrote:
>
>> On Monday, June 26, 2023 at 5:34:47?PM UTC-4, bitrex wrote:
>>> The multi-value option on the Espresso logic-minimization software can
>>> be used to solve the "input-encoding" problem, where you have say some
>>> m-bit ROM and some number of outputs n > m, and you want to find out
>>> assigning which bit vectors in the ROM to what output vectors will
>>> result in the smallest decode logic.
>>>
>>> The documentation isn't particularly helpful:
>>>
>>> <http://bear.ces.cwru.edu/eecs_cad/man_octtools_espresso_inputs.html>
>>>
>>> the closest relevant example I can find is Example 2:
>>>
>>> "This example shows a description of a multiple-valued function with 5
>>> binary variables and 3 multiple-valued variables (8 variables total)
>>> where the multiple-valued variables have sizes of 4 27 and 10 (note that
>>> the last multiple-valued variable is the "output" and also encodes the
>>> ON -set, DC -set and OFF -set information)."
>>>
>>> .mv 8 5 4 27 10
>>> .ilb in1 in2 in3 in4 in5
>>> .label var=5 part1 part2 part3 part4
>>> .label var=6 a b c d e f g h i j k l m n
>>> o p q r s t u v w x y z a1
>>> .label var=7 out1 out2 out3 out4 out5 out6
>>> out7 out8 out9 out10
>>> 0-010|1000|100000000000000000000000000|0010000000
>>> 10-10|1000|010000000000000000000000000|1000000000
>>> 0-111|1000|001000000000000000000000000|0001000000
>>> 0-10-|1000|000100000000000000000000000|0001000000
>>> 00000|1000|000010000000000000000000000|1000000000
>>> 00010|1000|000001000000000000000000000|0010000000
>>> 01001|1000|000000100000000000000000000|0000000010
>>> 0101-|1000|000000010000000000000000000|0000000000
>>> 0-0-0|1000|000000001000000000000000000|1000000000
>>> 10000|1000|000000000100000000000000000|0000000000
>>> 11100|1000|000000000010000000000000000|0010000000
>>> 10-10|1000|000000000001000000000000000|0000000000
>>> 11111|1000|000000000000100000000000000|0010000000
>>> .
>>> .
>>> .
>>> 11111|0001|000000000000000000000000001|000000000
>>>
>>>
>>>
>>> For myself I basically just want to find out how to have X bits of
>>> external input and Y bits of ROM and optimize the encoding in ROM such
>>> that the decode logic is minimized, but I'm struggling to figure out
>>> this input file syntax..
>>
>> This isn't 1980 anymore, no one is all that concerned with saving memory, unless it's some super expensive high performance type. Get a "ROM" with wider words, this can synthesized with a composite stack using parallel addressing as well part upgrade. Whoever wrote the description in the link is a worthless idiot.
>
> The FPGA tools take your suggestion and map it into their
> architecture. The days of Karnaugh maps are long gone.
>

Pretty sure the undergrad-textbook Karnaugh maps were always largely
pedagogical tool; the digital systems of even the 1950s already needed
more complexity than could be easily analyzed graphically.

I suppose someone had to build the Ur-computer without computer-aided
design but computers were helping to design computers very early on.

Re: Espresso-mv logic minimization

<taqnM.1426$Bq67.489@fx13.iad>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=124155&group=sci.electronics.design#124155

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!usenet.goja.nl.eu.org!3.eu.feeder.erje.net!feeder.erje.net!feeder1.feed.usenet.farm!feed.usenet.farm!peer03.ams4!peer.am4.highwinds-media.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx13.iad.POSTED!not-for-mail
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.12.0
Subject: Re: Espresso-mv logic minimization
Content-Language: en-US
Newsgroups: sci.electronics.design
References: <QvnmM.13780$LQ3.12372@fx01.iad>
<064f62c3-2979-4cbd-9e92-2e0e08c1d3d3n@googlegroups.com>
<2ltr9i9kq588rcqdrsf7mn9jqsuv048qrn@4ax.com>
From: use...@example.net (bitrex)
In-Reply-To: <2ltr9i9kq588rcqdrsf7mn9jqsuv048qrn@4ax.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Lines: 63
Message-ID: <taqnM.1426$Bq67.489@fx13.iad>
X-Complaints-To: abuse@frugalusenet.com
NNTP-Posting-Date: Fri, 30 Jun 2023 01:25:45 UTC
Organization: frugalusenet - www.frugalusenet.com
Date: Thu, 29 Jun 2023 21:25:46 -0400
X-Received-Bytes: 3893
 by: bitrex - Fri, 30 Jun 2023 01:25 UTC

On 6/29/2023 5:26 PM, John Larkin wrote:
> On Wed, 28 Jun 2023 15:08:41 -0700 (PDT), Fred Bloggs
> <bloggs.fredbloggs.fred@gmail.com> wrote:
>
>> On Monday, June 26, 2023 at 5:34:47?PM UTC-4, bitrex wrote:
>>> The multi-value option on the Espresso logic-minimization software can
>>> be used to solve the "input-encoding" problem, where you have say some
>>> m-bit ROM and some number of outputs n > m, and you want to find out
>>> assigning which bit vectors in the ROM to what output vectors will
>>> result in the smallest decode logic.
>>>
>>> The documentation isn't particularly helpful:
>>>
>>> <http://bear.ces.cwru.edu/eecs_cad/man_octtools_espresso_inputs.html>
>>>
>>> the closest relevant example I can find is Example 2:
>>>
>>> "This example shows a description of a multiple-valued function with 5
>>> binary variables and 3 multiple-valued variables (8 variables total)
>>> where the multiple-valued variables have sizes of 4 27 and 10 (note that
>>> the last multiple-valued variable is the "output" and also encodes the
>>> ON -set, DC -set and OFF -set information)."
>>>
>>> .mv 8 5 4 27 10
>>> .ilb in1 in2 in3 in4 in5
>>> .label var=5 part1 part2 part3 part4
>>> .label var=6 a b c d e f g h i j k l m n
>>> o p q r s t u v w x y z a1
>>> .label var=7 out1 out2 out3 out4 out5 out6
>>> out7 out8 out9 out10
>>> 0-010|1000|100000000000000000000000000|0010000000
>>> 10-10|1000|010000000000000000000000000|1000000000
>>> 0-111|1000|001000000000000000000000000|0001000000
>>> 0-10-|1000|000100000000000000000000000|0001000000
>>> 00000|1000|000010000000000000000000000|1000000000
>>> 00010|1000|000001000000000000000000000|0010000000
>>> 01001|1000|000000100000000000000000000|0000000010
>>> 0101-|1000|000000010000000000000000000|0000000000
>>> 0-0-0|1000|000000001000000000000000000|1000000000
>>> 10000|1000|000000000100000000000000000|0000000000
>>> 11100|1000|000000000010000000000000000|0010000000
>>> 10-10|1000|000000000001000000000000000|0000000000
>>> 11111|1000|000000000000100000000000000|0010000000
>>> .
>>> .
>>> .
>>> 11111|0001|000000000000000000000000001|000000000
>>>
>>>
>>>
>>> For myself I basically just want to find out how to have X bits of
>>> external input and Y bits of ROM and optimize the encoding in ROM such
>>> that the decode logic is minimized, but I'm struggling to figure out
>>> this input file syntax..
>>
>> This isn't 1980 anymore, no one is all that concerned with saving memory, unless it's some super expensive high performance type. Get a "ROM" with wider words, this can synthesized with a composite stack using parallel addressing as well part upgrade. Whoever wrote the description in the link is a worthless idiot.
>
> The FPGA tools take your suggestion and map it into their
> architecture. The days of Karnaugh maps are long gone.
>

Incidentally Maurice Karnaugh passed away just last November, at the age
of 98

Re: Espresso-mv logic minimization

<2fb4a0f4-1675-5d3f-0839-808502dc104a@electrooptical.net>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=124156&group=sci.electronics.design#124156

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: pcdhSpam...@electrooptical.net (Phil Hobbs)
Newsgroups: sci.electronics.design
Subject: Re: Espresso-mv logic minimization
Date: Thu, 29 Jun 2023 22:13:40 -0400
Organization: A noiseless patient Spider
Lines: 48
Message-ID: <2fb4a0f4-1675-5d3f-0839-808502dc104a@electrooptical.net>
References: <QvnmM.13780$LQ3.12372@fx01.iad>
<064f62c3-2979-4cbd-9e92-2e0e08c1d3d3n@googlegroups.com>
<2ltr9i9kq588rcqdrsf7mn9jqsuv048qrn@4ax.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Info: dont-email.me; posting-host="4cd6d95605429999ce3e9e7cdce5f5a9";
logging-data="2562138"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/QdeZ5ZW8fEurEItO2++KO"
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
Thunderbird/78.0
Cancel-Lock: sha1:wUMQCyd3xI91k/+Y74LRs30uE/4=
In-Reply-To: <2ltr9i9kq588rcqdrsf7mn9jqsuv048qrn@4ax.com>
 by: Phil Hobbs - Fri, 30 Jun 2023 02:13 UTC

On 2023-06-29 17:26, John Larkin wrote:
> On Wed, 28 Jun 2023 15:08:41 -0700 (PDT), Fred Bloggs
> <bloggs.fredbloggs.fred@gmail.com> wrote:
>
>> On Monday, June 26, 2023 at 5:34:47?PM UTC-4, bitrex wrote:

>>> <snip> For myself I basically just want to find out how to have X
>>> bits of external input and Y bits of ROM and optimize the
>>> encoding in ROM such that the decode logic is minimized, but I'm
>>> struggling to figure out this input file syntax..
>>
>> This isn't 1980 anymore, no one is all that concerned with saving
>> memory, unless it's some super expensive high performance type. Get
>> a "ROM" with wider words, this can synthesized with a composite
>> stack using parallel addressing as well part upgrade. Whoever
>> wrote the description in the link is a worthless idiot.
>
> The FPGA tools take your suggestion and map it into their
> architecture. The days of Karnaugh maps are long gone.

Karnaugh maps take about 10 minutes to learn from a standing start. I
know this because, long ago when I was a second-year undergraduate, I
taught everybody in my physics lab section how to do it. (There was a
logic minimization segment to the lab assignment.)

It runs out of gas past three or four inputs, but that's plenty for
using multifunction gates, for instance.

MFGs are super useful--they're fast, and you can make any two-input
logic function from one of two types of three-input gates, so you don't
need to keep a whole lot of types.

So every once in awhile I need to use a Karnaugh map, even still.

Cheers

Phil Hobbs

--
Dr Philip C D Hobbs
Principal Consultant
ElectroOptical Innovations LLC / Hobbs ElectroOptics
Optics, Electro-optics, Photonics, Analog Electronics
Briarcliff Manor NY 10510

http://electrooptical.net
http://hobbs-eo.com

Re: Espresso-mv logic minimization

<3yrnM.3491$t9v6.2722@fx15.iad>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=124158&group=sci.electronics.design#124158

  copy link   Newsgroups: sci.electronics.design
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer02.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx15.iad.POSTED!not-for-mail
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.12.0
Subject: Re: Espresso-mv logic minimization
Newsgroups: sci.electronics.design
References: <QvnmM.13780$LQ3.12372@fx01.iad>
<064f62c3-2979-4cbd-9e92-2e0e08c1d3d3n@googlegroups.com>
<2ltr9i9kq588rcqdrsf7mn9jqsuv048qrn@4ax.com>
<2fb4a0f4-1675-5d3f-0839-808502dc104a@electrooptical.net>
Content-Language: en-US
From: use...@example.net (bitrex)
In-Reply-To: <2fb4a0f4-1675-5d3f-0839-808502dc104a@electrooptical.net>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 50
Message-ID: <3yrnM.3491$t9v6.2722@fx15.iad>
X-Complaints-To: abuse@frugalusenet.com
NNTP-Posting-Date: Fri, 30 Jun 2023 02:59:11 UTC
Organization: frugalusenet - www.frugalusenet.com
Date: Thu, 29 Jun 2023 22:59:11 -0400
X-Received-Bytes: 3099
 by: bitrex - Fri, 30 Jun 2023 02:59 UTC

On 6/29/2023 10:13 PM, Phil Hobbs wrote:
> On 2023-06-29 17:26, John Larkin wrote:
>> On Wed, 28 Jun 2023 15:08:41 -0700 (PDT), Fred Bloggs
>> <bloggs.fredbloggs.fred@gmail.com> wrote:
>>
>>> On Monday, June 26, 2023 at 5:34:47?PM UTC-4, bitrex wrote:
>
>>>> <snip> For myself I basically just want to find out how to have X
>>>> bits of external input and Y bits of ROM and optimize the
>>>> encoding in ROM such that the decode logic is minimized, but I'm
>>>> struggling to figure out this input file syntax..
>>>
>>> This isn't 1980 anymore, no one is all that concerned with saving
>>> memory, unless it's some super expensive high performance type. Get
>>> a "ROM" with wider words, this can synthesized with a composite
>>> stack using parallel addressing as well part upgrade.  Whoever
>>> wrote the description in the link is a worthless idiot.
>>
>> The FPGA tools take your suggestion and map it into their
>> architecture. The days of Karnaugh maps are long gone.
>
> Karnaugh maps take about 10 minutes to learn from a standing start.  I
> know this because, long ago when I was a second-year undergraduate, I
> taught everybody in my physics lab section how to do it.  (There was a
> logic minimization segment to the lab assignment.)
>
> It runs out of gas past three or four inputs, but that's plenty for
> using multifunction gates, for instance.
>
> MFGs are super useful--they're fast, and you can make any two-input
> logic function from one of two types of three-input gates, so you don't
> need to keep a whole lot of types.
>
> So every once in awhile I need to use a Karnaugh map, even still.
>
> Cheers
>
> Phil Hobbs
>

"Logic Friday' will jointly minimize up to 16 inputs and outputs, and
spit out a gate diagram optimized for either die area or the standard
74xxxxxxxx series ICs.

<https://download.cnet.com/Logic-Friday/3000-20415_4-75848245.html>

It'll also spit out a C function which might occasionally be useful, I
think I remember a post one time about someone using one of the really
tiny 8-bitters, with like 256 bytes of RAM just to implement a weird
logic function.

Re: Espresso-mv logic minimization

<f8a80b67-62d0-4dc7-8a65-cbebc7e80b43n@googlegroups.com>

  copy mid

https://www.novabbs.com/tech/article-flat.php?id=124295&group=sci.electronics.design#124295

  copy link   Newsgroups: sci.electronics.design
X-Received: by 2002:a05:620a:28c8:b0:75f:216:4b8b with SMTP id l8-20020a05620a28c800b0075f02164b8bmr55214qkp.3.1688232358936;
Sat, 01 Jul 2023 10:25:58 -0700 (PDT)
X-Received: by 2002:a05:6a00:178d:b0:682:f33:fa97 with SMTP id
s13-20020a056a00178d00b006820f33fa97mr7425692pfg.6.1688232358315; Sat, 01 Jul
2023 10:25:58 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer03.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: sci.electronics.design
Date: Sat, 1 Jul 2023 10:25:57 -0700 (PDT)
In-Reply-To: <2fb4a0f4-1675-5d3f-0839-808502dc104a@electrooptical.net>
Injection-Info: google-groups.googlegroups.com; posting-host=2601:5cc:4701:5250:30dc:9cc5:8db7:92c7;
posting-account=iGtwSwoAAABNNwPORfvAs6OM4AR9GRHt
NNTP-Posting-Host: 2601:5cc:4701:5250:30dc:9cc5:8db7:92c7
References: <QvnmM.13780$LQ3.12372@fx01.iad> <064f62c3-2979-4cbd-9e92-2e0e08c1d3d3n@googlegroups.com>
<2ltr9i9kq588rcqdrsf7mn9jqsuv048qrn@4ax.com> <2fb4a0f4-1675-5d3f-0839-808502dc104a@electrooptical.net>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <f8a80b67-62d0-4dc7-8a65-cbebc7e80b43n@googlegroups.com>
Subject: Re: Espresso-mv logic minimization
From: bloggs.f...@gmail.com (Fred Bloggs)
Injection-Date: Sat, 01 Jul 2023 17:25:58 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 3641
 by: Fred Bloggs - Sat, 1 Jul 2023 17:25 UTC

On Thursday, June 29, 2023 at 10:13:51 PM UTC-4, Phil Hobbs wrote:
> On 2023-06-29 17:26, John Larkin wrote:
> > On Wed, 28 Jun 2023 15:08:41 -0700 (PDT), Fred Bloggs
> > <bloggs.fred...@gmail.com> wrote:
> >
> >> On Monday, June 26, 2023 at 5:34:47?PM UTC-4, bitrex wrote:
> >>> <snip> For myself I basically just want to find out how to have X
> >>> bits of external input and Y bits of ROM and optimize the
> >>> encoding in ROM such that the decode logic is minimized, but I'm
> >>> struggling to figure out this input file syntax..
> >>
> >> This isn't 1980 anymore, no one is all that concerned with saving
> >> memory, unless it's some super expensive high performance type. Get
> >> a "ROM" with wider words, this can synthesized with a composite
> >> stack using parallel addressing as well part upgrade. Whoever
> >> wrote the description in the link is a worthless idiot.
> >
> > The FPGA tools take your suggestion and map it into their
> > architecture. The days of Karnaugh maps are long gone.
> Karnaugh maps take about 10 minutes to learn from a standing start. I
> know this because, long ago when I was a second-year undergraduate, I
> taught everybody in my physics lab section how to do it. (There was a
> logic minimization segment to the lab assignment.)
>
> It runs out of gas past three or four inputs, but that's plenty for
> using multifunction gates, for instance.
>
> MFGs are super useful--they're fast, and you can make any two-input
> logic function from one of two types of three-input gates, so you don't
> need to keep a whole lot of types.
>
> So every once in awhile I need to use a Karnaugh map, even still.

They're good for "hazard-free" logic synthesis and creation of sequencing through an ASM.

The best minimizer out there for MSI level design is "bubble-logic".

>
> Cheers
>
> Phil Hobbs
>
> --
> Dr Philip C D Hobbs
> Principal Consultant
> ElectroOptical Innovations LLC / Hobbs ElectroOptics
> Optics, Electro-optics, Photonics, Analog Electronics
> Briarcliff Manor NY 10510
>
> http://electrooptical.net
> http://hobbs-eo.com

1
server_pubkey.txt

rocksolid light 0.9.81
clearnet tor