HLS creates internal clock enable??

In HLS (2015.2), I created a simple comparator circuit. The HLS C-simulation worked fine.
The HLS C-function compares 8-bit integers received from an 8-bit data bus against a fixed array
of 8-bit integers. If the first integer matches, a counter is incremented, and the C-function
will then look for the 2nd integer in the array. If the sequence of 8-bit integers on the data
bus matches the sequence of bytes in the stored array (distributed memory Eg. ROM), a  match
is detected.
After observing a good C-simulation, I then instantiated the HLS Verilog file code into the actual
hardware, and attempted a Modelsim simulation. It did not work!! This is a very simple circuit. The
Verilog file has the ports below.
ap_clk
ap_rst
ap_start
ch(7:0)   <---    This is the incoming 8-bit data bus.
ch_valid
ap_return   <---   This is the match signal.
If ch_valid is HIGH, the comparator should compare ch(7:0), against the known internal fixed array of 8-bit
integers. The signal ch(7:0) changes every ap_clk. The problem with the hardware is that HLS
created an internal clock enable. For this circuit to work, the ch(7:0) bus needs to be stable for
2-clock cycles. The only reason I found this was because saw what was happening in ModelSim.
When coding in C, there is no concept of clock. I thought HLS was intended to allow the user to create
code and to not be concerned with clocks and other hardware events.
Questions:
1. Is the purpose of HLS to allow a software programmer to be able code and create hardware, or does an HLS
programmer need a hardware background?
2. If the HLS programmer does not need a hardware background, how would a software programmer find
an internal clock enable?
3. Is there a switch to prevent HLS from creating code that uses internal clock enables, or does the C-code
need to written in a certain way?
Thanks!

In HLS (2015.2), I created a simple comparator circuit. The HLS C-simulation worked fine.
The HLS C-function compares 8-bit integers received from an 8-bit data bus against a fixed array
of 8-bit integers. If the first integer matches, a counter is incremented, and the C-function
will then look for the 2nd integer in the array. If the sequence of 8-bit integers on the data
bus matches the sequence of bytes in the stored array (distributed memory Eg. ROM), a  match
is detected.
After observing a good C-simulation, I then instantiated the HLS Verilog file code into the actual
hardware, and attempted a Modelsim simulation. It did not work!! This is a very simple circuit. The
Verilog file has the ports below.
ap_clk
ap_rst
ap_start
ch(7:0)   <---    This is the incoming 8-bit data bus.
ch_valid
ap_return   <---   This is the match signal.
If ch_valid is HIGH, the comparator should compare ch(7:0), against the known internal fixed array of 8-bit
integers. The signal ch(7:0) changes every ap_clk. The problem with the hardware is that HLS
created an internal clock enable. For this circuit to work, the ch(7:0) bus needs to be stable for
2-clock cycles. The only reason I found this was because saw what was happening in ModelSim.
When coding in C, there is no concept of clock. I thought HLS was intended to allow the user to create
code and to not be concerned with clocks and other hardware events.
Questions:
1. Is the purpose of HLS to allow a software programmer to be able code and create hardware, or does an HLS
programmer need a hardware background?
2. If the HLS programmer does not need a hardware background, how would a software programmer find
an internal clock enable?
3. Is there a switch to prevent HLS from creating code that uses internal clock enables, or does the C-code
need to written in a certain way?
Thanks!

Similar Messages

  • Import order not creating internal sales orders for some orgs

    Hi,
    We are getting one issue in UAT instance. The details are as below -
    1. Created Sales Orders in all 7 orgs.
    2. Ran ASCP plan
    3. planned orders got auto released in all orgs.
    4. Corresponding Internal requisitions got created in all orgs.
    5. Ran 'Create Internal Orders' from each org.
    6. Ran 'Order Import' from BE org as all the IR's were sourced from BE as per sourcing rules.
    7. Issue is that out of 7 orgs, in 2 orgs, DK and SE, the internal sales orders didn't get created and order import gave error. I am attaching the error log below.
    For other 5 orgs, ISO got created successfully and we performed picking/shipping and receiving as well for these 5 orgs.
    Any help will be most welcome.
    error log is -
    Order Import Concurrent Program
    Concurrent Program Parameters
    Validate Only: N
    Order Source: 10
    Order Ref:
    Sold To Org Id:
    Sold To Org:
    Change Sequence:
    Performance Parameter: Y
    Trim Blanks: N
    Operation:
    Number of Instances: 0
    Debug Level: 0
    Request Id: 6891
    Org Id: 2453
    Failed to perform Action Request BOOK_ORDER
    Failed to perform Action Request BOOK_ORDER
    Failed to perform Action Request BOOK_ORDER
    No. of orders found: 2
    No. of orders imported: 0
    No. of orders failed: 2
    Source/Order/Seq/Line Message
    10/1046001536//2 User-Defined Exception in Package OE_SCHEDULE_UTIL Procedure Load_Results_from_rec
    10/1046001536//2 ATP Process resulted in no data
    10/1046001536//2 User-Defined Exception in Package OE_SCHEDULE_UTIL Procedure Load_Results_from_tbl
    10/1046001538//2 User-Defined Exception in Package OE_SCHEDULE_UTIL Procedure Load_Results_from_rec
    10/1046001538//2 ATP Process resulted in no data
    10/1046001538//2 User-Defined Exception in Package OE_SCHEDULE_UTIL Procedure Load_Results_from_tbl
    End of Order Import Concurrent Program

    Try running the Order import from a responsibility where the profile "OM: Override ATP flag" is set to YES at that responsibility level..

  • Error while creating internal order

    Hi,
    I have defined an Order type for budgeting purpose, so that statistical internal orders be created under that order type.
    This is required for budget controlling.
    Now I am not able to create internal order in Ko01.
    I am getting the below error message:
    Internal Orders: Profit Center  not allowed
    Message no. Z1052
    Please guide me how to create statistical internal order for new order type defined.
    Thanks & Regards,
    Divya

    hi
    goto oke5 actovate u r contorling area for year base  and also asiisgm dummy profit center., u can make settings in this path,
    sap img- controling-profit center accounting-besic settings -contoling area setting-maintain controling area setting, this sceern u activate year wise ,a nd also assign profit center.
    and u dont define profit center goto same path -masterdata- prifitcent - define profit center.
    first u settings completed,
    other wise u contact ur fico consultant
      regards
    sankar.

  • Concurrent manager encountered an error while running sql*plus for your concurrent request create internal order

    Hi
    We have a big problem, We can't create internal orders, when I run the CREATE INTERNAL ORDER, it finish with ERROR:
    Concurrent Manager encountered an error while running SQL*Plus for your concurrent request 134980682.
    Review your concurrent request log and/or report output file for more detailed information.
    this is the log:
    +---------------------------------------------------------------------------+
    Purchasing: Version : 12.0.0
    Copyright (c) 1979, 1999, Oracle Corporation. All rights reserved.
    POCISO module: Create Internal Orders
    +---------------------------------------------------------------------------+
    Current system time is 26-JUL-2013 09:21:09
    +---------------------------------------------------------------------------+
    +-----------------------------
    | Starting concurrent program execution...
    +-----------------------------
    +---------------------------------------------------------------------------+
    Start of log messages from FND_FILE
    +---------------------------------------------------------------------------+
    Begin create internal sales order
    Updating Req Headers
    14 Reqs selected for processing
    Top of Fetch Loop
    Source Operating Unit: 82
    Selecting Currency Code
    Currency Code : MXP
    Selecting Order Type
    Order Type ID:1001
    Selecting Price List from Order Type
    Deliver To Location Id: 196
    Inserting Header : 3908784
    Getting the customer id
    Getting the customer id: 15334
    Unhandled Exception : ORA-01403: no data found
    +---------------------------------------------------------------------------+
    End of log messages from FND_FILE
    +---------------------------------------------------------------------------+
    Concurrent Manager encountered an error while running SQL*Plus for your concurrent request 134980682.
    Review your concurrent request log and/or report output file for more detailed information.
    +---------------------------------------------------------------------------+
    Executing request completion options...
    Output file size:
    78
    Output is not being printed because:
    The print option has been disabled for this report.
    Finished executing request completion options.
    +---------------------------------------------------------------------------+
    Concurrent request completed
    Current system time is 26-JUL-2013 09:21:14
    +---------------------------------------------------------------------------+
    Some suggestion for resolve it??
    Thanks & Regards.

    In the document 294932.1 Section 4 there are no pre-installation patches or update for OS RedHat LinuxAS4.
    When I type echo $LD_ASSUME_KERNEL it doesn't display any value so do I need to set the LD_Assume_Kernal value manually.
    If yes, please let me know the path and command to set the kernel value.
    Thanks
    Amith

  • Getting error when creating internal table

    hi i m creating internal table giving erro like 'VBELN' must be flat structure.
    DATA: BEGIN OF INT_VBAK,
            VBELN  LIKE VBELN-VBAK,
            AUDAT  LIKE AUDAT-VBAK,
            KWMENGE LIKE KWMENGE-VBAP,
            ARKTX LIKE ARKTX-VBAP,
            WERKS LIKE WERKS-VBAP,
            LFIMG LIKE LFIMG-VBAP.
          END OF INT_VBAK.
    thanks .

    Hii Laxman..
    DATA: BEGIN OF INT_VBAK,
    VBELN LIKE VBELN-VBAK,
    AUDAT LIKE AUDAT-VBAK,
    KWMENGE LIKE KWMENGE-VBAP,
    ARKTX LIKE ARKTX-VBAP,
    WERKS LIKE WERKS-VBAP,
    LFIMG LIKE LFIMG-VBAP.
    END OF INT_VBAK.
    This is Not itab declaration.. it will only Create a work area.
    So Declare like this
    DATA: BEGIN OF INT_VBAK <b>occurs 100,</b>
    VBELN LIKE VBELN-VBAK,
    AUDAT LIKE AUDAT-VBAK,
    KWMENGE LIKE KWMENGE-VBAP,
    ARKTX LIKE ARKTX-VBAP,
    WERKS LIKE WERKS-VBAP,
    LFIMG LIKE LFIMG-VBAP.
    END OF INT_VBAK.
    or
    DATA: BEGIN OF ST_VBAK ,
    VBELN LIKE VBELN-VBAK,
    AUDAT LIKE AUDAT-VBAK,
    KWMENGE LIKE KWMENGE-VBAP,
    ARKTX LIKE ARKTX-VBAP,
    WERKS LIKE WERKS-VBAP,
    LFIMG LIKE LFIMG-VBAP.
    END OF ST_VBAK.
    DATA : INT_VBAK LIKE TABLE OF ST_VBAK.
    Then it works.
    <b>Reward if Helpful</b>

  • Uploading data from excel file to a dynamically created internal table

    Hi,
    I have a requirement where i have to upload data from an excel file into a database table. I would be able to determine the structure of the table only at runtime based on the user input.. so i have created an internal table dynamically.
    Could you please tell me if its possible to upload data from an excel file to the dynamically created internal table using any function modules?
    I thought of doing this by declaring a generic internal table of one field and then uploading the *.csv file into it and then splitting it based on "," and then assigning it to the field symbol referencing the internal table.. but my file length exceeds 132 characters and i'm only able to get data of lenght 132 char's in my internal table ( generic one).
    Could anyone please show me a way around this.
    Thanks in advance,
    Harsha

    Sure, check this out.
    report zrich_0002.
    type-pools: slis.
    field-symbols: <dyn_table> type standard table,
                   <dyn_wa>,
                   <dyn_field>.
    data: it_fldcat type lvc_t_fcat,
          wa_it_fldcat type lvc_s_fcat.
    type-pools : abap.
    data: new_table type ref to data,
          new_line  type ref to data.
    data: iflat type table of string.
    data: xflat type string.
      data: irec type table of string with header line.
      data: tabix type sy-tabix.
    data: file type string.
    selection-screen begin of block b1 with frame title text .
    parameters: p_file type  rlgrap-filename default 'c:Test.csv'.
    parameters: p_flds type i.
    selection-screen end of block b1.
    start-of-selection.
    * Add X number of fields to the dynamic itab cataelog
      do p_flds times.
        clear wa_it_fldcat.
        wa_it_fldcat-fieldname = sy-index.
        wa_it_fldcat-datatype = 'C'.
        wa_it_fldcat-inttype = 'C'.
        wa_it_fldcat-intlen = 10.
        append wa_it_fldcat to it_fldcat .
      enddo.
    * Create dynamic internal table and assign to FS
      call method cl_alv_table_create=>create_dynamic_table
                   exporting
                      it_fieldcatalog = it_fldcat
                   importing
                      ep_table        = new_table.
      assign new_table->* to <dyn_table>.
    * Create dynamic work area and assign to FS
      create data new_line like line of <dyn_table>.
      assign new_line->* to <dyn_wa>.
      file = p_file.
      call method cl_gui_frontend_services=>gui_upload
        exporting
          filename                = file
        changing
          data_tab                = iflat
        exceptions
          file_open_error         = 1
          file_read_error         = 2
          no_batch                = 3
          gui_refuse_filetransfer = 4
          invalid_type            = 5
          no_authority            = 6
          unknown_error           = 7
          bad_data_format         = 8
          header_not_allowed      = 9
          separator_not_allowed   = 10
          header_too_long         = 11
          unknown_dp_error        = 12
          access_denied           = 13
          dp_out_of_memory        = 14
          disk_full               = 15
          dp_timeout              = 16
          others                  = 17.
      loop at iflat into xflat.
        clear irec. refresh irec.
        split xflat at ',' into table irec.
        loop at irec.
          tabix = sy-tabix.
          assign component tabix of structure <dyn_wa> to <dyn_field>.
          <dyn_field> = irec.
        endloop.
        append <dyn_wa> to <dyn_table>.
      endloop.
    * Write out data from table.
      loop at <dyn_table> into <dyn_wa>.
        do.
          assign component  sy-index  of structure <dyn_wa> to <dyn_field>.
          if sy-subrc <> 0.
            exit.
          endif.
          if sy-index = 1.
            write:/ <dyn_field>.
          else.
            write: <dyn_field>.
          endif.
        enddo.
      endloop.
    Regards,
    Rich Heilman

  • How to create internal table dynamically based on a table entry

    hi Experts,
      I have table yprod_cat. It has product categories.
      In my ABAP program I need to create internal table dynamically based on the number of entries in the table.
      For example:
      If the table has 3 entries for product category
      1. Board
      2. Micro
      3. Syst
    Then create three (3) internal tables.
    i_board
    i_micro
    i_syst
    How can we do this? Any sample code will be very usefull
    Thanks & Regards
    Gopal
    Moderator Message: No sample codes can be given. Please search for them or work it!
    Edited by: kishan P on Jan 19, 2011 4:22 PM

    Our APEX version is 4.2We are using below SQL query to display radio groups dynamically..
    SELECT APEX_ITEM.RADIOGROUP (1,deptno,'20',dname) dt
    FROM dept
    ORDER BY 1;
    Created a form using SQL type and given abouve SQL query as source.. But when we run the page, there were no radio groups displayed in the page..
    Below is the output of the query..
    <input type="radio" name="f01" value="10" />ACCOUNTING
    <input type="radio" name="f01" value="20" checked="checked" />RESEARCH
    <input type="radio" name="f01" value="30" />SALES
    <input type="radio" name="f01" value="40" />OPERATIONS
    >
    If Tabular Form:
    Edit Region > Report Attributes > Edit Column > Change the Column type to "Standard Report Column"
    If normal Page Item:
    Edit Page Item > Security > Escape special characters=No.
    Pl read the help on that page item to understand the security risk associated with =NO.
    Cheers,
    Edited by: Prabodh on Dec 3, 2012 5:59 PM

  • How to create internal table for a structure in BSP

    hi ,
    I have created a Structure in BSP.I want to create an internal table for that Structure. But in my coding ie.
    <% data: begin of itab_1 .
                     include type zuvendstr.
                     data:end of itab_1.
                     data wa_str like line of itab_1.
                     loop at itab_1 into wa_str. %>
                    <tr>
                     <td><%=wa_str-name%> </td>
                           <%endloop.%>
    In this zuvendstr is Structure ,wa_str is workarea and itab_1 is an Internal table.But it is showinng an error that itab_1 is unknown.But we cannot define internal tables for an Structure in Page Attributes.So,please resolve how to create internal table for Structure in BSPS

    Hi,
    You can define itab_1 like this (assuming zuvendstr is a structure type):
    DATA: itab_1 TYPE TABLE OF zuvendstr.
    Regards,
    Tanguy

  • Computer shuts off when unplugged, resets internal clock

    I have been having an issue lately with my mid 2009 MBP 13in where occasionally if the magsafe adapter is removed from the notebook, it will suddenly shut off.  After about a minute, I am able to start it up again and it will be on battery power until I reset the SMC.  When it does load up OSX, the internal clock is reset to some date in 2001 and I have to manually change it back to the present for everything to play nice again.  It's been pretty annoying at times and I have no idea what would cause the computer to act up so sporadically.  I can't recreate the problem on command, it just happens when I least expect it.  The battery is fine as Coconutbattery shows a life of about 89% still.  Does anyone have any idea what and why this occurs?

    Remove the battery and inspect for any abnormalities. Check the contacts on both the battery and the computer. Also check your battery status under Apple Menu> About This Mac. Click on More Info and then the System Profiler will come up. In the left hand column select Power and see what your battery status is there compared to what Coconut battery said.

  • How to create an input enabled query with Integrated Planning

    Hello experts. I have created an aggregation level in IP and I am trying to create an input enabled query based on this aggregation level.  My problem is in the properties.  On the query properties planning tab the Start query in change mode is grayed out and I am unable to select it.  Also on all the chararteristic properties on the planning tab, the planning settings are all grayed out as well and the No budgeting is selected.  There is a red exclamation here that says 'function not supported by server'  Any ideas?  Points will be awarded.
    Peter

    hi,
    go through this help for the procedure...
    [http://help.sap.com/saphelp_nw04s/helpdata/en/43/1d023a41130bd5e10000000a422035/frameset.htm]
    hope it helps...

  • How to delete a field from a Dynamically created internal table

    Hi friends,
    I have got a requirement in which, I will be entering the table name and Excel file from seletion-screen.
    based on the Table I have entered in the selection-screen I need to create a dynamic internal table so that I can fill that Execel data into that internal table and later i using BDC i can I can fill the database table using SM30 transaction.
    here. my problem is that, When I am creating internal table dynamically, MANDT filed is also getting created in the internal table.
    please, help in deleteing the filed MANDT from the internal able.
    following is the code which creates the dynamic internal table.
    CREATE DATA dy_table TYPE TABLE OF (p_tabname).
    assign dy_table->* to <dyn_table>.
    please provide, if any sample code is available.
    Regards,
    Xavier.P

    Hi,
    You can use this logic,
    While creating the Dynamic filed catalog try to avoid MANDT field.
    Ex:
    *Dynamic creation of a structure
      CREATE DATA LP_STRUCT TYPE (V_TABLE).
      ASSIGN LP_STRUCT->* TO <FS>.
    *Fields Structure
      OF_SDESCR ?= CL_ABAP_TYPEDESCR=>DESCRIBE_BY_DATA( <FS> ).
    LOOP AT OF_SDESCR->COMPONENTS ASSIGNING <COMPONENTS>.
    *Field MANDT not displayed
        IF SY-TABIX = 1 AND <COMPONENTS>-NAME = 'MANDT'.
          CONTINUE. " Next loop
        ENDIF.
    *Build Fieldcatalog
        LS_LVC_CAT-FIELDNAME = <COMPONENTS>-NAME.
        LS_LVC_CAT-REF_TABLE = V_TABLE.
        APPEND LS_LVC_CAT TO LT_LVC_CAT.
        CLEAR LS_LVC_CAT.
      ENDLOOP.

  • Is it possible to create internal connection in SM59

    Is it possible to create internal connection in SM59?  I tried but it seems it is not possible.
    What are internal connections made for?

    Internal connections is basically the connection between you CI and you DI's and viceversa... this connections are automatically generated when the instaces are installed.
    I wonder why you want to set one up manually.
    Regards
    Juan

  • Problem Creating Internal pdf Links In Preview

    I am trying to create internal links in a pdf file within Preview. When I "Set Destination" to a particular page within the file, the link always goes to the page after the one I set. The strange thing is that when I view the same file on a Windows PC it works right. Any ideas how to fix?

    Did you ever find out why this happens? I am having the same problem and so is another mac user I know. We can't figure it out!

  • How to create a clock with: a reset, start and stop

    How can i create a clock that have to do the following thing:
    Countdown visual in the screen
    Timeset with day's in seconds
    - Pressing start -> it start to run
    - Pressing stop -> The clock is stopping but it keeps the time, when i press start again then it goes on with counting
    - Pressing Reset -> the clock goes back to the start position and waits to start again.
    Tia, William
    Running with Labview 6.1
    Fieldpoint hardware

    The key is to use a shift register to hold the previous count...
    Attached is a quick and dirty version of what you describe. It displays the passed time as seconds so if you need it to be in days just divide the value by 86400...If you don't need sub-second updates you can increase the wait time.
    MTO
    Attachments:
    Stopwatch.vi ‏39 KB

  • How do I create internal links in a PDF eBook?

    Hi there, any help with this is GREATLY appreciated. I have the latest version of Adobe, but when I try to create internal links, there doesn't seem to be any way to do it. Doing a Net search I saw that in previous versions of Adobe, that is, 6, there WAS the ability to create internal links (Tools => Advanced Editing => Link Tool). Now there does NOT seem to be the same facility, which is incredibly frustrating, like Adobe went backwards.
    I am creating PDF's from Word, and by internal links I *don't* mean hyperlinks - those are created automatically - but a link in the Index, for eg, so a person can click on a Chapter heading on page 4, for eg and be taken immediately to page 50, for eg.
    Going slowly nuts here as there seems to be NO readily-available advice as to how to do this.
    THANKS.

    Ok, "Adobe" is the company.
    The application is?
    Adobe Reader - if yes, then tools such as the Link tool are not available.
    Acrobat (Standard/Pro) - if yes, then the Link tool is available.
    If using Acrobat X then click "Tools" (at the right) > expand the "Content" panel > select "Link"
    If using Acrobat 9 or earlier then use Tools > Advanced Editing > Link tool.
    Be well...

Maybe you are looking for