Browse Source

xspice, flip-flops and ram, cast the `ic' PARAM to Digitial_State_t

the *.ifs file claims this parameter to be an integer in range 0..2
  meant to represent ZERO, ONE and UNKNOWN
pre-master-46
rlar 16 years ago
parent
commit
84a69a3896
  1. 13
      ChangeLog
  2. 2
      src/xspice/icm/digital/d_dff/cfunc.mod
  3. 2
      src/xspice/icm/digital/d_dlatch/cfunc.mod
  4. 2
      src/xspice/icm/digital/d_jkff/cfunc.mod
  5. 4
      src/xspice/icm/digital/d_ram/cfunc.mod
  6. 2
      src/xspice/icm/digital/d_srff/cfunc.mod
  7. 2
      src/xspice/icm/digital/d_srlatch/cfunc.mod
  8. 2
      src/xspice/icm/digital/d_tff/cfunc.mod

13
ChangeLog

@ -1,3 +1,16 @@
2010-07-16 Robert Larice
* src/xspice/icm/digital/d_dff/cfunc.mod ,
* src/xspice/icm/digital/d_dlatch/cfunc.mod ,
* src/xspice/icm/digital/d_jkff/cfunc.mod ,
* src/xspice/icm/digital/d_srff/cfunc.mod ,
* src/xspice/icm/digital/d_srlatch/cfunc.mod ,
* src/xspice/icm/digital/d_tff/cfunc.mod :
xspice, flip-flops, cast the `ic' PARAM to Digitial_State_t
the *.ifs file claims this parameter to be an integer in range 0..2
meant to represent ZERO, ONE and UNKNOWN
* src/xspice/icm/digital/d_ram/cfunc.mod :
xspice, the same fix for `ram'
2010-07-16 Robert Larice
* src/xspice/icm/analog/pwl/cfunc.mod ,
* src/xspice/icm/spice2poly/icm_spice2poly/cfunc.mod ,

2
src/xspice/icm/digital/d_dff/cfunc.mod

@ -284,7 +284,7 @@ void cm_d_dff(ARGS)
if (0.0 == TIME) { /****** Initial conditions...output w/o delays ******/
temp = PARAM(ic);
temp = (Digital_State_t) PARAM(ic);
/** Modify output if set or reset lines are active **/
if ( (*set==ONE) && (*reset==ZERO) ) temp = ONE;

2
src/xspice/icm/digital/d_dlatch/cfunc.mod

@ -289,7 +289,7 @@ void cm_d_dlatch(ARGS)
if (0.0 == TIME) { /****** DC analysis...output w/o delays ******/
temp = PARAM(ic);
temp = (Digital_State_t) PARAM(ic);
/** Modify output if set or reset lines are active **/
if (*enable==ONE) temp = *data;

2
src/xspice/icm/digital/d_jkff/cfunc.mod

@ -374,7 +374,7 @@ void cm_d_jkff(ARGS)
if (0.0 == TIME) { /****** DC analysis...output w/o delays ******/
temp = PARAM(ic);
temp = (Digital_State_t) PARAM(ic);
/** Modify output if set or reset lines are active **/
if ( (*set==ONE) && (*reset==ZERO) ) temp = ONE;

4
src/xspice/icm/digital/d_ram/cfunc.mod

@ -1046,7 +1046,7 @@ void cm_d_ram(ARGS)
/** initialize ram to ic value **/
out = PARAM(ic);
out = (Digital_State_t) PARAM(ic);
for (i=0; i<word_width; i++) {
for (j=0; j<ram_size; j++) {
cm_initialize_ram(out,word_width,i,j,ram);
@ -1056,7 +1056,7 @@ void cm_d_ram(ARGS)
if ( (ONE==*select) && (ZERO==*write_en) ) {
/* output STRONG initial conditions */
for (i=0; i<word_width; i++) {
OUTPUT_STATE(data_out[i]) = PARAM(ic);
OUTPUT_STATE(data_out[i]) = (Digital_State_t) PARAM(ic);
OUTPUT_STRENGTH(data_out[i]) = STRONG;
}
}

2
src/xspice/icm/digital/d_srff/cfunc.mod

@ -370,7 +370,7 @@ void cm_d_srff(ARGS)
if (0.0 == TIME) { /****** DC analysis...output w/o delays ******/
temp = PARAM(ic);
temp = (Digital_State_t) PARAM(ic);
/** Modify output if set or reset lines are active **/
if ( (*set==ONE) && (*reset==ZERO) ) temp = ONE;

2
src/xspice/icm/digital/d_srlatch/cfunc.mod

@ -384,7 +384,7 @@ void cm_d_srlatch(ARGS)
if (0.0 == TIME) { /****** DC analysis...output w/o delays ******/
temp = PARAM(ic);
temp = (Digital_State_t) PARAM(ic);
/** Modify output if set or reset lines are active **/
if ( (*enable==ONE) && (*s==ONE) && (*r==ZERO) ) temp = ONE;

2
src/xspice/icm/digital/d_tff/cfunc.mod

@ -297,7 +297,7 @@ void cm_d_tff(ARGS)
if (0.0 == TIME) { /****** DC analysis...output w/o delays ******/
temp = PARAM(ic);
temp = (Digital_State_t) PARAM(ic);
/** Modify output if set or reset lines are active **/
if ( (*set==ONE) && (*reset==ZERO) ) temp = ONE;

Loading…
Cancel
Save