6 Replies Latest reply on Jun 29, 2016 10:16 AM by user_117827432

    Project Not Compiling with Two SCB components

    arptt

      Hi,

         

      I am using PSoC4100M for a project. I have two SCB components. One configured as I2C master and the other as UART. The I2C and UART pins are routed to different ports. I2C on port 1 and UART on port4. 

         

      When I compile the project I get CyDsFit Error which says 

         

      "E2809: Unable to find a valid placement for pins and fixed-function blocks. See the Digital Placement's Detailed placement messages section in the report file for details"

         

      and gives the following suggestion

         

      The placer is not able to place all of the carry chains without backtracking. It fills one UDB bank to 15/16 and the other to 7/8 and cannot place the final 2-datapath chain. As a workaround, add a control file to the TopDesign component (in Workspace Explorer's Components tab) with the following lines: ATTRIBUTE placement_force OF \Timer_ADPActiveTime:TimerUDB:sT16:timerdp:u0\ : LABEL IS "U(2,0)"; ATTRIBUTE placement_force OF \Timer_OutputPeriod:TimerUDB:sT24:timerdp:u0\ : LABEL IS "U(3,1)"; ATTRIBUTE placement_force OF \Timer_OutputActiveTime:TimerUDB:sT24:timerdp:u0\ : LABEL IS "U(0,1)"; This will fill the datapaths in the second UDB bank and allow the placer to assign the remaining datapaths.

         

      I added the above lines to the control file. But it still gives the same error. 

         

      Please find attached the project bundle.

         

      Best Regards,

         

      -arp

        • 1. Re: Project Not Compiling with Two SCB components
          user_1377889

          Changing UART:

             

          Set the name to "UART"

             

          Set Byte Mode

             

           

             

          Set all pins to <auto-assign during build>

             

          Increase Rx and Tx buffer to 16 bytes

             

           

             

          Bob

          • 2. Re: Project Not Compiling with Two SCB components
            arptt

            Hi,

               

            made the changes to the UART except the <auto-assign during build>. The pins are fixed for me. It gives me the same error. Does that mean that the pins are not routable to the pins I have assigned?

               

            -arp

            • 3. Re: Project Not Compiling with Two SCB components
              user_1377889

              Does that mean that the pins are not routable to the pins I have assigned? That is correct. The pins for the SCB blocks are dedicated. You can see after a successful design build which pins you may use.

                 

               

                 

              Bob

              • 4. Re: Project Not Compiling with Two SCB components
                user_117827432

                Hi Arptt and Bob.

                   

                I'm having the same problem. If I insert the second SCB block configured as UART (both of them are UART) it gives me the error message: E2809: Unable to find a valid placement for pins and fixed-function blocks. See the Digital Placement's Detailed placement messages section in the report file for details.

                   

                If I remove the block (which is currently not in use in the firmware), it compiles without any problem. Does you figured out how to solve it?

                   

                Nicolas

                • 5. Re: Project Not Compiling with Two SCB components
                  user_1377889

                  Can you please post your complete project, so that we all can have a look at all of your settings. To do so, use
                  Creator->File->Create Workspace Bundle (minimal)
                  and attach the resulting file.

                     

                   

                     

                  Bob

                  • 6. Re: Project Not Compiling with Two SCB components
                    user_117827432

                    Hi everyone. 

                       

                    I know that this is a bit old already. But I figured out what was happening to my design when I included the second SCB block. The problem is that I was using the pins P0[4] and P0[5] for one SCB and the P3[0] and P3[1] for the second, the PSoC Creator allowed to set this configuration. But, in fact, these both pair of pins are related to the same SCB[1] block. The only pins that can be used as SCB[0] block are P4[0] and P4[1]. Thus, I was trying to force two different SCBs in the same hardware, that is why the error saying that one of them could not be placed correctly.

                       

                    Hope you have already solved your problem arptt. If not I hope that this could help a little.

                       

                    Nicolas