Simple GPIF-II project won't build

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
lock attach
Attachments are accessible only for community members.
Anonymous
Not applicable

I am experimenting with the FX3 and using the GPIF-II Designer.

   

I basically have the following states. D1 is an INPUT:

   
        
  • Start
  •     
  • Idle     
            
    • Transition to State3 on (!D1)
    •      
  •     
  • State3 - LD_DATA_COUNT, LD_CTRL_COUNT.     
            
    • Transitions to State4 on (D1).
    •      
  •     
  • State4 - COUNT_DATA, COUNT_CTRL.     
            
    • Transition to State5 on (D1 & DATA_CNT_HIT).
    •       
    • Transition to State6 on (D1 & CTRL_CNT_HIT).
    •       
    • Transition to State7 on (!D1)
    •      
  •    
   

[I have attached a screen shot of an example project that exhibits this error. This design is just to demonstrate my problem.]

   

I do not understand why the GPIF-II Designer project will not build. All the state transitions are mutually exclusive yet it gives the error "Unable to synthesis the state machine...".

0 Likes
3 Replies
Anonymous
Not applicable

I'll answer my own question.... 

   

The GPIF II hardware imposes some limitations on the state machines that can be implemented. Mainly, these
limitations are:

   
        
  • Full support is limited to state machines that are limited to two (or fewer) outgoing transitions from each state.Such state machines are called binary state machine in the rest of this document.

  •     
  • Each transition equation is limited to the use of four (or fewer) trigger variables.

  •    
   

Isn't it embarrassing how you can find the answer to your own question, by reading the documentation, as soon as you've posted a question !!

0 Likes
Anonymous
Not applicable

Not so embarrassing.  I'm new to this product and ran into the same issue.  The very informative error message from GPIF II Designer was:

   

Unable to synthesis the state machine.Please try changing outgoing transition equations from state 'PUSH_DATA_SCK0'.

   

Note it just says "try changing" - not "too many."

   

I also managed to find the information after digging into several documents.  It would be nice if the tool itself were better at describing the real underlying issue.

0 Likes

As an intro to the GPIF II Designer, it's good to walk through building using training wheels of an application note first.  Even if the target application does not match the application note.  I happened to start with AN75779 which explains the "no more than two outgoing transitions" limitation.  They run into this in the application note and explain how to construct more than two outgoing transitions with the expense of an additional state.

http://www.cypress.com/documentation/application-notes/an75779-how-implement-image-sensor-interface-...

Specifically:

http://www.cypress.com/file/123506/download

Page 30, figures 21 and 22

The document does not cover the maximum number of trigger terms as the project does not require this.  When I tried adding more than 4 terms to my own project, GPIF II Designer asked if I wanted the state machine to be automatically changed.  I didn't want to really do this - so I bailed.

I think it's good to run through an application note that builds an entire project as there are good generic tips contained in the ANs not only limited to GPIF II Designer.

0 Likes