FPGA's for Dummies eBook promotion
Greetings community... I haven't found a "General" forum so I thought I'd post this query on the FPGA forum, my apologies in advance if this is regarded as an inappropriate post. So I signed up to Intel's marketing in order to receive a promotional eBook: FPGA's for Dummies and was happy to receive the email with the link to the eBook. Sadly the link is broken and I received a "Oops, something went wrong!" message. In case you're wondering... yes I am a dummy when it comes to FPGA's and am wanting to change that... So it will be really great if a forum moderator (or similarly knowledgeable person) could pick this up and let me know where I might find the, not so free, eBook in question... Here's the broken link: @http://app.plan.intel.com/e/er?cid=em&source=elo&campid=&content=psg_WW_psgem_LPCD_EN_2021_FPGA%20for%20Dummies%20book-EN_C-MKA-22281_T-MKA-23035&elq_cid=12830471&em_id=66727&elqrid=bfa4d54597c244a3854cd8b4cabd13ee&elqcampid=&erpm_id=13189406&s=334284386&lid=234440&elqTrackId=2b1d3e0f82d54841b67cfbe45474cd9b&elq=bfa4d54597c244a3854cd8b4cabd13ee&elqaid=66727&elqat=1 Thanks in advance. JacquesSolved9.7KViews0likes7CommentsTriple speed Ethernet (TSE) MAC Configuration in 10/100 for Arria 10 device FPGA.
Hi , Am Working on ARRIA 10 device FPGA (10AX016E3F27I2SG) . Using Quartus Standard edition version 21.1 for FPGA Design and NIOS II SDK for Software development. I have few Queries regarding the FPGA and its drivers. 1. we have Configured NIOS Processor for Triple Speed Ethernet MAC in Quartus tool , and exported to NIOS II tool. Ethernet Address and Board support Packages (BSP) got generated but , am unable to find the sequence of the TSE driver. I have attached the BSP (Source and Header )Files generated for TSE. I need the sequence for TSE driver. a. How to do Reset for MAC ? b. Need functions or routines for TSE Transmit and Receive Frames . c. Initialization process of TSE MAC ? d. How to Set the speed for TSE MAC ? e. Process to Enable and Disable the Interrupts of TSE MAC. 2. I need Register set with Bit description and Offset Addresses for TSE MAC Initialization . 3. TCP IP stack and how to attach the driver to main function and process to send TCP and UDP Packets. 4. I need the example code for TSE MAC configuration of 10/100. 5. We are using Microchip PHY (KSZ8081RNDCA-TR) in our custom board. I need sequence process to access the PHY .6.2KViews0likes6CommentsDe2-115 remove the default project
Hi everyone, I hope you are all doing well. I am a bit confused about the default configuration on the board. I am trying to create an audio project or any other project, and I realized that, if I plug in a microphone or my phone into the line-in and speakers, the board will play sound. What I want to ask is, how can I remove this default configuration? I thought that if I compile a new project and upload it to the device, the previous configuration would be removed. I hope I have made myself clear in my question, I would greatly appreciate your advice Thank you.Solved4.4KViews0likes10CommentsController IP for DE10-Lite SDRAM
I'm having trouble to initialize the external SDRAM on the DE10-lite board. I tried to use the SDRAM Controller Intel FPGA IP which was available for free in qsys until Quartus 20. Now it seems not to be free anymore and I have trouble using it anyway. My question is: what would be the *free* way to use the SDRAM without having to write a whole controller on my own when one wants to use the latest Quartus lite version? I searched for "SDRAM" in the IP components and found that: It doesn't look like it contains a compatible tool for me or I don't understand them. Is there any guideline on how to use either one of these tools or the "old" SDRAM Controller in combination with the sdram that is attached to the de10-lite board? Thanks TimSolved4.3KViews0likes9CommentsCouldn't access HLS in Quartus 19.1 Standard Edition
Couldn't access HLS in Quartus 19.1 Standard Edition I have done the steps: On Windows systems, initialize your environment as follows: Start a Visual Studio x64 Win64 Command Prompt session. For example, C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\amd64\vcvars64.bat. In your x64 Win64 Command Prompt session, change directories to the hls directory in your Intel® Quartus® Prime installation directory. For example, C:\intelFPGA_standard\19.1\hls Run the following command from the hls directory to set the environment variables for the i++ command in the current terminal session: init_hls.bat The command prints out the modified environment variable settings. The environment initialization script shows the environment variables that it set, and you can now run the i++ command from this command prompt session. But I am not able to access HLS , please help me in this regard. Attatchment: The screenshot of the command prompt is attached.3.8KViews0likes10CommentsVHDL code for JK flip-flop issue
Hi, I'm having issue trying to understand the code generated by the software Intel Quartus Prime. The JK flip-flop block used has an IF-ELSE statement that conflicts with each other. The SYNTHESIZED_WIRE_2 are checked for '0' twice and assigned with different values. That would mean the second statement will never be executed. Any ideas on what it means and how it works?Solved3.6KViews0likes3CommentsIntel FPGA SDK for OpenCL: Issue while launching same opencl kernel multiple times
Hi, I am using Intel FPGA SDK for OpenCL to perform matrix multiplication on DE1-SoC board. As per my requirement I have to perform this multiplication multiple times and hence iterating over a loop to enqueue the kernel. The first kernel successfully completes however the second kernel stuck in CL_RUNNING state indefinitely. I tried simplifying my code to narrow down the problem and removed all computatons from the kernel as below- __kernel void multiplication() { //Empty kernel } instead of loop I am equeueing my kernel 2 times as below- cl_int err; size_t global_work_size[] = {static_cast<size_t>(1)}; size_t local_work_size[] = {static_cast<size_t>(1)}; cl_event kernel_event1; // Enqueue the kernel for execution std::cout << "started enqueue" << std::endl; err = clEnqueueNDRangeKernel(queue, kernel, 1, NULL, global_work_size, local_work_size, 0, NULL, &kernel_event1); if (err != CL_SUCCESS) { std::cout << "Failed to enqueue"<< std::endl; } else{ std::cout << "Done enqueue"<< std::endl; } err = clWaitForEvents(1, &kernel_event1); if (err != CL_SUCCESS) { std::cerr << "Error waiting for kernel event." << std::endl; }else{ std::cout << "done executing the kernel" << std::endl; clReleaseEvent(kernel_event1); } //Second kernel execution cl_event kernel_event2; // Enqueue the kernel for execution std::cout << "started enqueue" << std::endl; err = clEnqueueNDRangeKernel(queue, kernel, 1, NULL, global_work_size, local_work_size, 0, NULL, &kernel_event2); if (err != CL_SUCCESS) { std::cout << "Failed to enqueue"<< std::endl; } else{ std::cout << "Done enqueue"<< std::endl; } cl_int event_status; clGetEventInfo(kernel_event2, CL_EVENT_COMMAND_EXECUTION_STATUS, sizeof(event_status), &event_status, NULL); if(event_status == CL_QUEUED){ printf("Kernel is queued.\n"); }else if(event_status == CL_SUBMITTED){ printf("Kernel is submitted.\n"); }else if(event_status == CL_RUNNING){ printf("Kernel is running.\n"); }else if(event_status == CL_COMPLETE){ printf("Kernel has completed.\n"); }else{ printf("Unknown status.\n"); } err = clWaitForEvents(1, &kernel_event2); if (err != CL_SUCCESS) { std::cerr << "Error waiting for kernel event." << std::endl; }else{ std::cout << "done executing the kernel" << std::endl; clReleaseEvent(kernel_event2); } In the above simplified code, my kernel is not performing any computations and just trying to launch same kernel second time after successful completion of first one. During the execution, I can see the debug statements printed that first execution is completed and second execution is successfully enqueued but status gets printed as CL_RUNNING and waits indefinitely at clWaitForEvents and not even returning an error message for the wait status. I'd highly appreciate if someone assist me to understand this issue. Thank you.Solved3.5KViews0likes6CommentsCan't get Quartus Prime Pro Academic License
Everything I do keeps taking me back to the University Program membership form. I'm already accepted and signed in. This is across browsers and devices. No matter what I do, requesting Prime Pro takes me to membership form, trying to open a support request opens the same membership form, trying to get an FPGA Evaluation IP takes me to the same form. I tried resubmitting another redundant form and did get accepted again and the behavior did not change. I cannot do anything without Quartus Prime Pro license as an Academic with an Agilex card.3.2KViews0likes1CommentTerasic De10-Nano tutorial source code down
Hi all, I'm going through the getting started guide for the terasic de10-nano, and none of the source code links works. Does anybody have the code (specifically for the On-board Accelerometer project) on their local that they're willing to share, please? Or if you know a similar project that also shows how to set a web server on the FPGA (like Express.js in the tutorial), I'd really appreciate it. Thank you.3.2KViews0likes8Comments