<!--
Set ALLOWTOPICCHANGE = P1076AdminGroup
-->

P1076 November 10, 2016 Meeting Minutes

Attendees:

  • Rob Gaddi, Peter Flake, Patrick Lehmann, Brent Hayhoe, Jim Lewis, Kevin Jennings,

Agenda:


Meeting Discussion

  • LCS Review
  • By December, need LCS for proposals that will go into standard.
  • December to March - prepare final document.
  • conditional compilation
    • Peter to write up LCS
    • For TOOL_NAME - require/desire short name: "GHDL" and not "GHDL Student Edition"
    • Add TOOL_EDITION s.t can enter as wish, such as "GHDL Student Edition"
    • Change VENDOR to TOOL_VENDOR
    • Add text that says vendor shall support a mechanism to pass in a user defined name and value
      • Example using DEBUG and a value.
    • TOOL_OPTIMIZATION with "LOW" "HIGH" - using low for automatic debug switches
      • Rejected at least for now can be done with user defined names
    • Change to 'end if
  • Rob
    • no update on time/date
      • Support local time and GMT
      • support for "+", "-"? No defer to future open source package
    • No update on optional ;
  • Patrick. Updates on <=>
    • Currently static.
    • Presented current strategy on Kobra.io - pasted later in the minutes.
  • Kevin - updated LCS's with voting section.
  • Brent - working on deferred shared variables. Will have something later.
  • Revive old style shared variables?
  • Protected types with initializer
    • See proposal for Protected types with generics GenericTypes
    • Can initialize a PT by calling a function method that returns a value (such as true) and initializes the PT by side effect.

Notes about Bundles

Big picture

========================================================== 1. Spaceship 2. bundles on top of records 3. extensions 3.1 map expression porta => map (sig1, sig2), 3.2 map functions ...

Overall algorithm

==========================================================

1. analysis - parse signal declarations as usual - parse spaceship assignment statements as normal assignment statements would be parsed

2. elaboration - gather lists for "space ship connected signals" (sscs) across hierachy - check that: - all signals in a sscs must have the same subtype (not only type, so the resolution function is included in the definition and always the same) - all signals in a sscs must be either: - unresolved, or - resolved. if so, the resolution function must be the same - (the mixed kind might be relaxed in a future revision) - ...

3. runtime 3.1 runtime init - ...

3.2 runtime cycle - ...

Questions:

==========================================================

- how to handle type conversions on "slip streams" (Gene Rodenberry's Andromeda - spaceships travel on slip streams) - so the subtype already includes the resolution function? - can I overwrite a resolution function if I sub type a subtype with another resolution function? - you can write sig foo : resolution_func unresolved_type; -- this creates an anonimous subtype - If I do it twice, are these anonymous sutypes compatible?

Algorithm to construct spaceship connected signals (sscs):

==========================================================

# Construction SpaceShipConnections

for block in model.statementBlocks:

if isinstance(block, ConcurrentStatementBlock):

for stmt in block.Statements:

if isinstance(stmt, SpaceShipAssignment):

t = stmt.Target

s = stmt.Source

if t.SpaceShipConnections is None:

if s.SpaceShipConnections is None: # create a new SSC

ssc = SpaceShipConnection(t, s)

s.SpaceShipConnections = ssc

else: # add t to s' SSC

ssc = s.SpaceShipConnections

ssc += t

t.SpaceShipConnections = ssc

else:

ssc = t.SpaceShipConnections

if s.SpaceShipConnections is None: # add s to t' SSC

ssc += s

else: # merge both SSCs

ssc += s.SpaceShipConnections

s.SpaceShipConnections = ssc

elif isinstance(stmt, SignalAssignment):

t = stmt.Target

s = stmt.Source

d = Driver(s)

t.Sources.append(d)

TODO for Spaceship - Establish runtime algorithm - new step during signal resolution? - Applied to the smallest resolved sub-structure of a composite? - Determine impacted LRM sections - Chapter 14 ... - 14.7.3.4 Signal update ? - ?? - 14.7.5.3 Simulation cycle - section C & D may be impacted - Determine full scope - interaction with 'unresolved signals'? - interaction with 'resolved signals'? - possible connection scenarios - unresolved <=> unresolved - resolved <=> resolved - unresolved <=> resolved? - resolved <=> resolved with different resolution functions? - support for 'conversion function' or 'type conversion'?

Review and Approve Meeting Minutes and Decisions by Attendees

Rob, Peter, All

Review and Approve Meeting Minutes and Decisions by non-attendees

<Add your name below. Indicate if you agree or disagree>

<If you disagree, add a list of items you disagree with and initiate a reflector discussion>

TBD

Next Meeting: Thursday November 17, 2016, 11 am Pacific

Previous Meeting: Thursday November 3, 2016

Topic revision: r4 - 2020-02-17 - 15:36:17 - JimLewis
 
Copyright © 2008-2021 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback